在我的字符串中,我想根據兩個或多個空格拆分字符串或標記字符串。如何分割字符串,如果它後面跟着兩個或更多的空格/空白在Java中?
E.x.
string = "I am Chaitanya Gadam. Split this srting."
我想輸出 -
str[0]= "I am"
str[1]= "Chaitanya Gadam."
str[2]= "Split"
str[3]= "this string."
在我的字符串中,我想根據兩個或多個空格拆分字符串或標記字符串。如何分割字符串,如果它後面跟着兩個或更多的空格/空白在Java中?
E.x.
string = "I am Chaitanya Gadam. Split this srting."
我想輸出 -
str[0]= "I am"
str[1]= "Chaitanya Gadam."
str[2]= "Split"
str[3]= "this string."
string.split("\\s\\s+");
(或)
具有兩個或多個空格作爲定界符string.split("\\s{2,}");
String string = "I am Chaitanya Gadam. Split this srting.";
String[] str = string.split("\\s{2,}");
for(String s: str)
{
System.out.println(s+":"+s.length());
}
System.out.println(Arrays.toString(string.split("\\s\\s+")));
Output:
I am:4
Chaitanya Gadam.:16
Split:5
this srting.:12
[I am, Chaitanya Gadam., Split, this srting.]
拆分字符串。在正則表達式中使用Escape字符增加了可讀性,而不是使用空格字符。
使用try:String[] splitted = string.split(" +");
public static void main(String[] args) throws ParseException{
String string = "I am Chaitanya Gadam. Split this srting.";
String[] str = string.split(" +");
System.out.println(Arrays.toString(str));
for(String s : str)//Try printing this way .
System.out.println(s);
}
輸出:
[I am, Chaitanya Gadam., Split, this srting.]
你好Achintya,我試過了,但它沒有給我想要的輸出。 –
@ user2156738它爲我工作。 –
http://ideone.com/AkepIk - 工作示例 – Zelldon
這裏,這應該工作:
final String src = "I am Chaitanya Gadam. Split this srting.";
final String[] splits = src.split("[ ]{2,}");
Got- [我是,Chaitanya Gadam。,Split,這個srting。]爲什麼我們要在每個令牌之前獲得空間? –
因爲您不知道如何打印輸出,因此進行downvoting顯然是錯誤的。這是[Ideone](http://ideone.com/FYqvGF)。 – Perception
在for循環中打印數組,您將不會擁有每個令牌的任何空間。不要只是downvote –
使用Stringutils.split()以白色的步伐拆分字符串。例如StringUtils.split("Hello World")
返回「Hello」和「World」;
爲了解決上述情況下,我們用拆分法這樣
String split[]= StringUtils.split("Hello I'm your String");
,當我們打印分割陣列的輸出將是:
Hello
I'm
your
String
唯一的問題是,如果你試圖分裂string = "I am Chaitanya Gadam. Split this srting."
它將拆分Chiatanya Gadam。進入
[0]Chiatanya
[1]Gadam.
但您可以稍後再組合!
爲什麼downvote? –
陽光燦爛,我們可以把它放進去嗎,[我是] [] [Chaitanya Gadam。] [] [split] [] [this string。] –