假设我们有这样的代码;
String s = "ali trees tree";
System.out.println(s.indexOf("tree"));
输出为4.它是“树”的起始位置。 “树”字包括“树”,我认为因为它给出了错误的结果。
是否可以使用indexOf()函数查找“tree”字索引?
答案 0 :(得分:0)
您可以使用以下正则表达式检查是否
'树之后有一个空格。 (如果它不在最后)
/树($ | \ S)/
如果您不熟悉正则表达式,请查看本指南:http://www.tutorialspoint.com/java/java_regular_expressions.htm
答案 1 :(得分:0)
我还建议您可以在TREE中的最后一个E之后制作一个if语句检查字符,同时首先确保字符串中确实存在另一个字符。
例如:
boolean foundCorrectIndex=false;
String tree = "tree";
if (s.indexOf(tree) < s.length()-tree.length()){
int index = s.indexOf(tree)+tree.length();
if (s.charAt(index) == 's'){
foundCorrectIndex =true;
}
}
希望有所帮助!