如何在 java 中使用正则表达式提取子字符串
How to extract a substring using regex in java
我有以下字符串:
String xmlnode = "<firstname id="{$person.id}"> {$person.firstname} </firstname>";
如何编写正则表达式来提取 {$STRING_I_WANT}
中的数据
我需要的部分没有{$}
我该如何实现?
您可以将此正则表达式 \{$(.*?)\}
与如下模式一起使用:
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
我有以下字符串:
String xmlnode = "<firstname id="{$person.id}"> {$person.firstname} </firstname>";
如何编写正则表达式来提取 {$STRING_I_WANT}
我需要的部分没有{$}
我该如何实现?
您可以将此正则表达式 \{$(.*?)\}
与如下模式一起使用:
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