Java regex find method возвращает false для сопоставления римских цифрJAVA

Программисты JAVA общаются здесь
Anonymous
Java regex find method возвращает false для сопоставления римских цифр

Сообщение Anonymous »

Я пытаюсь создать шаблон регуляции в Java, чтобы соответствовать тексту списка, который имеет определенные атрибуты. Например: < /p>

Код: Выделить всё

(i) hello stackoverflow

(iv) hello user
< /code>
< /blockquote>

Список может сопоставить (i) < /code> или i) < /code>.
Я пришел к шаблону, используя мое понимание Regex и проверил эту версию в онлайн -инструменте, и он возвращает правильный результат. Однако, когда я реализую его в Java, сопоставление с шаблоном возвращает FALSE для метода поиска.String text = "(i) hello";
String romanNumeralsRegex = "^(\\(|\\[)?((v|x)?i[xv]|(xv|v|x)?i+|(xv|v|x))((\\)|\\]|\\.))";
Pattern pattern = Pattern.compile(romanNumeralsRegex );
Matcher matcher = pattern.matcher(text);
System.out.println(matcher.find());
< /code>

Метод matcher.find () возвращает false. На мой взгляд, сопоставщик должен вернуть группу (0) 
как [/b]. Я не знаю, где я ошибся. Запрашивая помощь от сообщества здесь < /p>

Заранее. < /P>

Подробнее здесь: https://stackoverflow.com/questions/499 ... n-numerals

Вернуться в «JAVA»