我用正则表达式测试器试过这个并且它有效。但为什么我不能让它适用于JAVA。
我希望搜索neither..........nor
我想计算字符串neither
中有多少nor
个"Neither u or me are human"
。
我试过了:
occurrence += sentence.split( "(?i)\\Wneither.+nor\\W" ).length - 1;
但它无效,因为输出System.out.print(occurrence)
结果为0
。
我认为\\W
代表非单词字符,而.+
代表任何字符。
如何获得occurrence
的{{1}}结果?
答案 0 :(得分:1)
您可以使用此计算事件:
Pattern pattern = Pattern.compile("(neither|nor)", Pattern.CASE_INSENSITIVE);
Matcher matcher = pattern.matcher("Neither u or me are human");
int count = 0;
while (matcher.find())
count++;
System.out.println(count);