如何在java

时间:2017-11-07 18:45:23

标签: java regex string text-extraction

我有以下字符串:

String xmlnode = "<firstname id="{$person.id}"> {$person.firstname} </firstname>";

如何编写正则表达式来提取{$STRING_I_WANT}

中的数据

我需要的部分没有{$}我该如何实现?

1 个答案:

答案 0 :(得分:0)

您可以将此正则表达式\{\$(.*?)\}与此模式一起使用:

String xmlnode = "<firstname id=\"{$person.id}\"> {$person.firstname} </firstname>";

Pattern pattern = Pattern.compile("\\{\\$(.*?)\\}");
Matcher matcher = pattern.matcher(xmlnode);

while (matcher.find()) {
    System.out.println(matcher.group(1));
}

注意:您必须使用{转义每个字符$ } \,因为每个字符都是正则表达式中的特殊字符。

<强>输出

person.id
person.firstname