Мне нужно извлечь некоторые переменные из строки в Java - PullRequest
0 голосов
/ 23 января 2012

Предположим, у меня есть String str="Hello $everybody$. How $are$ you $all$"; Из приведенной выше строки мне нужно извлечь значения everybody, are, all в список.Обратите внимание, что все необходимые значения начинаются и заканчиваются на $.Как я могу сделать это в Java?

Пожалуйста, помогите.

С уважением,

Ответы [ 4 ]

3 голосов
/ 23 января 2012

Рабочий код:

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class HelloWorld {

    public static void main(String[] args) {
        Pattern p = Pattern.compile("\\$(\\w.*?)\\$");
        String s = "Hello $everybody$. How $are$ you $all$";

        Matcher m = p.matcher(s);
        while (m.find()) {
                System.out.println(m.group(1));
        }
    }

}
1 голос
/ 23 января 2012

Попробуйте пройти этот урок: http://java.sun.com/developer/technicalArticles/releases/1.4regex/ - это должно помочь. \$(\w+)\$ это трюк.

1 голос
/ 23 января 2012

Использование Регулярные выражения

Вам понадобится шаблон вроде:

\$[\w]+\$
0 голосов
/ 23 января 2012

Посмотрите на класс Matcher в Java.

Pattern p = Pattern.compile( "$(.*)$", Pattern.DOTALL);
Matcher matcher = p.matcher(str);
while (matcher.find()) {
    // Get the matching string
    String match = matcher.group();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...