我有以下文字:多个正则表达式的字符串匹配
bla [string1] bli [string2]
我喜欢在Java中的循环匹配字符串1和字符串使用正则表达式。
怎么办?
到目前为止我的代码,其中仅第一字符串1相匹配,但不也串2
String sRegex="(?<=\\[).*?(?=\\])";
Pattern p = Pattern.compile(sRegex); // create the pattern only once,
Matcher m = p.matcher(sFormula);
if (m.find())
{
String sString1 = m.group(0);
String sString2 = m.group(1); // << no match
}
不为我工作。这正是我的问题。你的代码也只匹配第一个字符串。如何做到这一点匹配第二个字符串2?我喜欢在字符串中包含[?]的所有匹配项。 –
'if'应该被'while'代替以匹配多次以返回所有匹配。 – anubhava
好的。我懂了。非常感谢。你的提示解决了这个问题。亲切的问候 –