我需要从java中的字符串中提取一些变量

时间:2012-01-23 10:12:44

标签: java string

假设我有String str="Hello $everybody$. How $are$ you $all$"; 从上面的字符串中,我需要将值everybodyareall提取到列表中。注意所有必需的值都以$开头和结束。我怎么能在java中做到这一点?

请帮忙。

的问候,

4 个答案:

答案 0 :(得分:3)

工作代码:

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 :(得分:1)

使用Regular Expressions

你需要一个像:

这样的模式
\$[\w]+\$

答案 2 :(得分:1)

尝试完成本教程:http://java.sun.com/developer/technicalArticles/releases/1.4regex/ - 它应该有所帮助。 \$(\w+)\$就是诀窍。

答案 3 :(得分:0)

查看Java中的Matcher类。

Pattern p = Pattern.compile( "$(.*)$", Pattern.DOTALL);
Matcher matcher = p.matcher(str);
while (matcher.find()) {
    // Get the matching string
    String match = matcher.group();
}