我在 Java 中有一个正则表达式:
Pattern pattern = Pattern.compile(<string>text</string><string>.+</string>);
Matcher matcher = pattern.matcher(ganzeDatei);
while (matcher.find()) {
String string = matcher.group();
...
这工作正常,但输出类似于
<string>text</string><string>Name</string>
但我只想要这个:Name
我该怎么做?
最佳答案
通过将其括在括号中来捕获要返回的文本,因此在此示例中,您的正则表达式应变为
<string>text</string><string>(.+)</string>
然后您可以访问括号之间匹配的文本
matcher.group(1)
无参数 group您正在调用的方法返回与您的模式匹配的输入文本的整个部分,而您只需要它的一个子序列,它与捕获组(括号)匹配。
关于Java 正则表达式 : Just get a part of the matcher group,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4142856/