Здравствуйте, у меня возникла проблема с использованием регулярного выражения с Java.Regex with matcher возвращает только первый результат
Я пытаюсь разобрать этот:
*whatever string*
<AttributeDesignator AttributeId="MyIDToParse"
DataType="http://www.w3.org/2001/XMLSchema#string"
Category="theCategoryIWantToParse"
MustBePresent="false"
/>
*whatever string ***that may contain the same regular expression again*** *
с помощью этого кода (Pattern + Сличитель)
Pattern regex = Pattern.compile("AttributeDesignator AttributeId=\"(.+?)\".*Category=\"(.+?)\"", Pattern.DOTALL);
Matcher matcher = regex.matcher(xml);
while (matcher.find()) {
String ID = matcher.group(1);
String Category = matcher.group(2);
Моя проблема заключается в том, что мои регулярное выражение возвращает только первое вхождение шаблона, даже если у меня есть время (matcher.find()).