2012-01-28 56 views
0

startsWith(字符串前綴)需要兩個字符串,並搜索,如果兩個字符串都以相同的值開始,有沒有辦法修改startsWith(字符串前綴)來搜索一個字符串重新發生字符?可能的修改startsWith(字符串前綴)來搜索一個字符串重新發生字符?

比方說

String str = "MANAMA"; 

我希望能夠搜索使用startsWith()和的endsWith()的字符串或一些變化,以確定該字符串的前綴或後綴是否是相同的。唯一的問題是這些方法查找兩個字符串,看看他們是否有匹配後綴的或前綴的

startsWith(字符串前綴)沒有這樣的:

String str1 = "MANAMA"; 
    String str2 = "PANAMA."; 


    // Sets what characters to search for from above strings 
    String startStr = "MA"; 

    // Searchs for startStr in strings 
    boolean starts1 = str1.startsWith(startStr); 
    boolean starts2 = str2.startsWith(startStr); 

    // Display the results of the startsWith calls. 
    System.out.println(starts1); 
    System.out.println(starts2); 

的endsWith(字符串後綴)作用:

String str1 = "MANAMA"; 
String str2 = "PANAMA."; 


// Sets what characters to search for from above strings 
String endStr = "MA"; 

// Searchs for startStr in strings 
boolean ends1 = str1.endsWith(endStr); 
boolean ends2 = str2.endsWith(endStr); 

// Display the results of the endsWith calls. 
System.out.println(ends1); 
System.out.println(ends2); 

有沒有辦法修改或不同的方法能夠搜索一個字符串,而不是搜索endStr和startStr的兩個字符串?

+2

請發佈您想要實現的示例。 – kosa 2012-01-28 07:55:42

+1

問題不明確。你能詳細說明嗎?舉個例子? – 2012-01-28 07:57:16

+0

現在怎麼樣?編輯 – Enigma 2012-01-28 08:16:15

回答

1

不知道我是否正確理解你的問題,但你可以在同一個字符串上使用endsWith()startsWith()。例如:

String line = "MANAMA"; 
String edge = "MA"; 

boolean check = line.startsWith(edge) && line.endsWith(edge); 
// returns true if the string starts and ends with "MA" 
+0

是的,你可以在同一個字符串上調用'endsWith()'和'startsWith()'方法。 – Dawood 2012-01-28 08:29:07

+0

那麼,如果我不知道字符串是什麼,直到用戶鍵入它,我將如何設置方法應該搜索的字符? – Enigma 2012-01-28 08:33:07

+0

我不認爲我理解你的問題 - 你是不是指定要檢查的前綴和後綴? – Dawood 2012-01-28 08:37:01