Проблемы с моим регулярным выражением в Java - PullRequest
0 голосов
/ 05 октября 2010

Привет, ребята, я пытаюсь выяснить простой regEx из приведенного ниже текста:

<b>Name:</b> Photomatix.Pro.v4.0.64bit-FOSI<br />

Я в основном хочу выводить и хранить только Photomatix.Pro.v4.0.64bit-FOSI т.е. фактическое значение, которое находится внутри , но когда я определяю его следующим образом:

private static final String REG_NAME = "<b>Name:</b>(.*)<br />";

На самом деле он хранит и выводит все <b>Name:</b> Photomatix.Pro.v4.0.64bit-FOSI<br />

Любые идеи о том, как я могу просто извлечь значение, данное из приведенного выше текста XML? ура заранее

Ответы [ 4 ]

6 голосов
/ 05 октября 2010

Это должно работать:

  final String REG_NAME = "<b>Name:</b>(.*)<br />";

        String text = "<b>Name:</b> Photomatix.Pro.v4.0.64bit-FOSI<br />";

        Pattern pattern = Pattern.compile(REG_NAME);

        Matcher matcher = pattern.matcher(text);

        if (matcher.find()) {
            System.out.println(matcher.group(1));
        }
1 голос
/ 05 октября 2010
String r = "/b>(.*)<b";

Pattern p = Pattern.compile( r );
Matcher m = p.matcher( "<b>Name:</b> Photomatix.Pro.v4.0.64bit-FOSI<br />" );

if ( m.find() )
{
  System.out.println( "found: " + m.group(1) );
}
0 голосов
/ 05 октября 2010

ну, я не думаю, что это хорошая идея для анализа html с помощью регулярных выражений, вы должны использовать некоторые html java-парсеры.если вы хотите использовать регулярные выражения, вы можете проверить некоторые примеры здесь: Регулярные выражения

0 голосов
/ 05 октября 2010

(У меня сейчас нет компилятора Java, поэтому я не могу проверить ответ. Таким образом, это не окончательный ответ, но ...)

Если вы действительно хотите сделать это с помощью регулярных выражений, вам следует взглянуть на совпадения и группы в классах регулярных выражений Java.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...