2016-04-04 78 views
0

假設我們有這樣的代碼;關於indexOfFunction的一個問題

String s = "ali trees tree"; 
System.out.println(s.indexOf("tree")); 

輸出是4.它是「樹」的開始位置。 「樹」這個詞包括「樹」,我認爲它會給出錯誤的結果。

這是一種用indexOf()函數查找「tree」單詞索引的方法嗎?

+2

正則表達式。 – Savior

回答

0

你可以使用檢查以下正則表達式,如果

  1. 「樹」是字符串
  2. 的最後一個元素「樹」之後有一個空格(如果它不是最後的結局)

    /樹($ | \ S)/

如果你是新的正則表達式請查看本指南:http://www.tutorialspoint.com/java/java_regular_expressions.htm

+0

非常感謝。 –

0

我還建議你可以在TREE中最後一個E之後檢查字符,如果它首先確保字符串中存在另一個字符。

例如:

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; 
} 
} 

希望幫助!