2015-07-20 87 views
-2

下面的代碼分割字符串。但我的預期是輸出「是一個女孩」。我該如何解決這個問題?我可以根據標記的索引分割字符串嗎?爪哇由令牌

回答

3

str.substring(str.indexOf("is"))

如果你想要得到的字符串的第一部分,你可以叫str.substring(0, str.indexOf("is"))

編輯:檢查出由@Codebender 答案這對這個問題更容易。

+0

OP希望得到第二部分用分隔符。但是你的答案只涉及與第一部分無關的部分OP – Panther

+1

@Panther'string.substring(x)'等於'string.substring(x,string.length())' –

+0

對不起,我錯過了答案的第一部分。我開始閱讀文本,只看到第二部分。我的錯 :-( – Panther

0

由於拆分方法不包括令牌,因此程序的輸出是正確的。您的需求,而不是split,您可以使用substringindex如下

String str = "She is a girl"; 
String substr1 = str.substring(str.indexOf("is"), str.length); 

體型子,如果你需要得到字符串的一部分。當需要根據令牌將字符串拆分爲多個字符串時,拆分很有用。

如果你只想使用拆分或有多個令牌,並希望令牌還包括,您可以使用look ahead token

4

使用正超前記號。

String[] substr = str.split("(?=is)"); 
0

您可以使用replaceFirst

string.replaceFirst(".*?\\b(is)\\b", $1); 

DEMO