考虑我们有以下字符串集:
String text="Geeraertsb,∗,1";
String text2="bla bla";
String text3="in terms of ";
我想获得那些不包含&
和/或" *"的字符串。所以这意味着只有`text2"感兴趣。
但是,如果我使用:
if(!text.contains("*"))
{
//do something
}
if(!text3.contains("&"))
{
//do something
}
确实输入了if
语句,但不应该输入each
语句。知道为什么吗?
答案 0 :(得分:1)
您正在使用不同的字符
∗
不等于*
您可能需要检查是否为String
个对象和条件使用了相同的字符集。
答案 1 :(得分:0)
您可以尝试这样:
Pattern mypat = Pattern.compile("[^a-z ]", Pattern.CASE_INSENSITIVE);
Matcher mat = mypat.matcher("Geeraertsb,∗,1");
boolean found = mat.find();
if (found)
{
//code
}
上面的代码使用正则表达式方法,您尝试检查字符串是否包含除字母表之外的任何内容。