1
我有一個String text "Welcome!to [email protected]";
字符串轉換爲字符數組,包括標點符號
我知道如何將它轉換爲接收陣列[歡迎,對,JAVA]
String[] aaa = text.split("[\\p{IsPunctuation}\\p{IsWhite_Space}]");
System.out.println(Arrays.toString(aaa)); //priinting
但我需要包括標點符號。我需要收到[歡迎,!,to,java,@]
任何人都知道誰來接收它?
我之所以需要這樣做,是因爲我有一個randomise(char[] cw)
方法,它爲我調整單詞。然而,當標點包括
public void randomise(char[] cw)
{
for (int i = 1; i < cw.length-1; i++)
{
//my range
int range= (int)(Math.random() * (cw.length - i - 1));
//swap index
int index=i+range;
//swap
char temp = cw[i];
cw[i] = cw[index];
cw[index] = temp;
}
System.out.println(cw);
}
感謝您的回覆
是否http://stackoverflow.com/questions/2206378/how該方法是瘋狂拆分字符串 - 但也保留的分隔符或http://stackoverflow.com/questions/275768/is-there-a-way-to-split-strings-with-string-split - 包含分隔符包含您正在尋找的答案?另外,請查看['StreamTokenizer'](http://docs.oracle.com/javase/7/docs/api/java/io/StreamTokenizer.html),使用'ByteArrayInputStream'和'!','@'等設置爲「普通」字符。 – 2014-11-06 18:24:21
是的。你的第二個鏈接幫助了我。谷歌搜索和coundnt找到。你輸入什麼詞找到它?非常感謝 – 2014-11-06 18:38:07
類似於[「java split string keep delimiter」](https://www.google.com/search?q=java+split+string+keep+delimiter),其中「保留分隔符」是關鍵術語那裏。我剛剛從過去的經驗中瞭解到的'StreamTokenizer'。 – 2014-11-06 18:48:05