编辑:这是使用Java 8流API的更新。如此清洁。仍然可以与正则表达式结合使用。
public static boolean stringContainsItemFromList(String inputStr, String[] items) {
return Arrays.stream(items).parallel().anyMatch(inputStr::contains);
}
另外,如果我们将输入类型更改为List而不是数组,则可以使用items.parallelStream().anyMatch(inputStr::contains)。
.filter(inputStr::contains).findAny()如果希望返回匹配的字符串,也可以使用。
原始的过时答案:
这是(VERY BASIC)静态方法。请注意,在比较字符串上区分大小写。一个原始的,使其不区分大小写的办法是打电话toLowerCase()或toUpperCase()输入和测试串两者。
如果您需要做的事情比这更复杂,我建议您查看一下Pattern和Matcher类,并学习如何做一些正则表达式。了解这些内容后,就可以使用这些类或String.matches()辅助方法。
public static boolean stringContainsItemFromList(String inputStr, String[] items)
{
for(int i =0; i < items.length; i++)
{
if(inputStr.contains(items[i]))
{
return true;
}
}
return false;
}