我遇到问题,因为我试图检查字符串是否包含以下任何字符:
{ "[(]", "[)]", "AND", "OR", "NOT", "NEAR", "NEAR/1", "NEAR/2", "NEAR/3", "NEAR/4", "NEAR/5", "NEAR/6", "NEAR/7", "NEAR/8", "NEAR/9" }
我有这个功能
public static boolean stringContainsItemFromList(String inputStr, String[] items) {
return Arrays.stream(items).parallel().anyMatch(inputStr::contains);
}
除非被比较的字符串类似于
,否则它的效果非常好"((Words and numbers))"
也就是说,有两个跟随父母。
不应该像字符串中只有一对父母一样检查它吗?我做错了什么?
感谢您的时间。
答案 0 :(得分:0)
根据评论:
String :: contains使用CharSequence来匹配非正则表达式。
- 飞行
我的第一个猜测是将“[(]”和“[)]”替换为“(”分别用“)”
- Lino
答案 1 :(得分:0)
正如我对OP所做的评论一样,我会将其作为答案发布,以便解决这个问题。
将"[(]"
和"[)]"
分别用"("
和")"
替换。