我在寻找一段可以搜索字符串中的字符串的代码。检查字符串中是否存在字符串java
String mainSTR = "It is Wednesday";
所以我需要一个代码,如果我在搜索mainSTR
"Day"
或"day"
或"DAY"
将返回true。
我试着像
mainSTR.contains("")
和
mainSTR.IndexOf("") > -1
是不是为我工作
谢谢:)
我在寻找一段可以搜索字符串中的字符串的代码。检查字符串中是否存在字符串java
String mainSTR = "It is Wednesday";
所以我需要一个代码,如果我在搜索mainSTR
"Day"
或"day"
或"DAY"
将返回true。
我试着像
mainSTR.contains("")
和
mainSTR.IndexOf("") > -1
是不是为我工作
谢谢:)
如果mainSTR
是一个很长的字符串,这种方式可能更有效:
String mainSTR = "It is Wednesday";
String toSearch = "Day";
boolean found = Pattern.compile(toSearch, Pattern.CASE_INSENSITIVE).matcher(mainSTR).find();
最后一行相当于
boolean found = Pattern.compile("(?i)" + toSearch).matcher(mainSTR).find();
但要注意的是toSearch
可能不包含正则表达式元字符,如果你这样做。
if mainSTR =“+91111111189”; toSearch =“89” 它会在这种情况下仍然工作,因为我刚刚得到一个错误,当我使用此代码。 –
@loveeSindh:它可以毫无问题地工作(甚至可以测试它)。你得到了什么样的错误? – jlordo
但你警告我要去搜索。所以即使mainSTR不能包含正则表达式元字符。所以有什么办法可以忽略它呢? –
什么,你可以在这里使用是一个单向的方法 - canonicalising功能。 toLowerCase(或toUpperCase)就是这样一个帮手。
mainSTR.toLowerCase().contains("day");
mainSTR.toUpperCase().contains("day".toUpperCase());
String days = "day";//or "Day" or "DAY"
mainSTR.toLowerCase().contains(days.toLowerCase());
PS:对于这样的比较,你应该更喜欢toLowerCase(Locale.ENGLISH)
或toUpperCase(Locale.ENGLISH)
,给你语言环境敏感字符串。
而here是javaDoc不得不说的。
注意:此方法是语言环境敏感的,可能产生,如果用于该旨在被独立地解释区域设置 串意想不到 结果。示例是编程语言标识符,协议 键和HTML标签。例如,土耳其语 语言环境中的“TITLE”.toLowerCase()返回“t?tle”,其中'?'是拉丁小写字母D字符。要获得区域设置不敏感字符串的正确结果,请使用toLowerCase(Locale.ENGLISH)。
请尝试以下操作:
mainSTR.toUpperCase().contains(day.toUpperCase());
干杯!
嗯,人们不能期待这样的问题和Android开发人员。总之,对于字符串找到任何单词,你可以使用Java方法
String mainSTR = "It is Wednesday";
String findThis = "DaY";
if(mainSTR.toLowerCase().contains(findThis.toLowerCase()))
{
System.out.println("true: Day found");
}
else
System.out.println("false: Day not found");
我同意但包含不起作用。我尝试了很多次,它不工作,这就是为什么我问这个反正谢谢,但它没有帮助.. –
你能显示此代码snipet将无法正常工作的实际代码? –
检查了这一点
String mainStr="It is Wednesday";
System.out.println(mainStr.toLowerCase().contains("wed".toLowerCase()));
您要检查'Day',那么你为什么要通过空字符串在'contains' ? –
你只在寻找“日”,“日”和“日”,或者像“日”和“达伊”这样的东西可以接受吗? – bengoesboom
@bengoesboom ...是的 –