回答
"cat".split("(?!^)")
這將產生
陣列[ 「C」, 「一個」, 「T」]
如何和爲什麼?這是一個正則表達式的意思嗎?因爲在我的腦海中,用分裂的方式工作,這隻會分裂爲實際的字符(,?,!,^和)。然而,它按照你所說的那樣工作。 – TyP 2014-03-06 02:07:16
這確實是一個正則表達式,稱爲負向預測。在這裏查看文檔:http://docs.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html#sum – Erwin 2014-05-28 08:51:27
@ EW-CodeMonkey'(?!'...')'是否定斷言的正則表達式語法 - 它斷言它內部沒有匹配。 '^'匹配字符串的開頭,所以正則表達式匹配每個不是*字符串開頭的位置,並在那裏插入一個分割。這個正則表達式也匹配字符串的末尾,因此除了'String.split'文檔[說](https://docs.oracle.com/javase/8/docs)之外,還會在結果中附加一個空字符串/api/java/lang/String.html#split-java.lang.String-)「結尾的空字符串不包含在結果數組中」。 – Boann 2015-11-09 00:46:34
也許你可以使用一個for循環,通過字符串的內容去,並提取由字符的字符使用charAt
方法。
例如,您可以結合一個ArrayList<String>
獲得您的單個字符數組。
也許你可以站在一條腿上唱「神拯救女王」。對不起,但這甚至不是正確的。 – 2017-01-27 07:54:17
"cat".toCharArray()
但是如果你需要串
"cat".split("")
編輯:它會返回一個空的第一個值。
轉動串轉化成的陣列的有效方式一個字符串將會這樣做:
String[] res = new String[str.length()];
for (int i = 0; i < str.length(); i++) {
res[i] = Character.toString(str.charAt(i));
}
但是,這並沒有考慮到String
中的char
實際上可能代表Unicode代碼點的一半。 (如果代碼點不在BMP中)。爲了解決這個問題,你需要遍歷代碼點......這更加複雜。
這種方法將比使用String.split(/* clever regex*/)
更快,它可能比使用Java 8+流更快。這是比這更快的可能:
String[] res = new String[str.length()];
int 0 = 0;
for (char ch: str.toCharArray[]) {
res[i++] = Character.toString(ch);
}
因爲toCharArray
有副本字符到一個新的數組。
array ["a", "?", "?", "b"]
)和更安全的東西已被用作
"ab".split("(?!^)")
不能使用
如果超出Basic Multilingual Plane字符預期輸入(某些CJK字符,新的表情符號),這樣的方法,:
"ab".codePoints()
.mapToObj(cp -> new String(Character.toChars(cp)))
.toArray(size -> new String[size]);
綜上所述其他答案...
這適用於所有的Java版本:
"cat".split("(?!^)")
只關於Java 8個,最多這僅適用於:
"cat".split("")
- 1. C#拆分字符串 - 將字符串拆分爲數組
- 2. 將字符串拆分爲字符串
- 3. 將字符串拆分爲字符串
- 4. 將字符串拆分爲字符串數組
- 5. Swift 3:按字符串將字符串拆分爲數組
- 6. 如何將字符串拆分爲字符串數組?
- 7. Android將字符串拆分爲數組
- 8. 將字符串拆分爲雙數組
- 9. 將字符串拆分爲數組Shellllscript
- 10. 拆分字符串數組
- 11. 將字符串拆分爲「|」
- 12. 將lua字符串拆分爲字符
- 13. Elisp拆分字符串函數來拆分字符串。字符
- 14. 如何將字符串拆分爲字母字符串和數字字符串?
- 15. 將字符串拆分爲多個字符串組
- 16. 將字符串拆分爲基於分隔符的字符串數組
- 17. 將字符串拆分爲不帶分隔符的字符串數組C
- 18. 將字符串拆分爲字符數組 - Objective-C
- 19. 將字符串拆分爲數組(每個字符) - Swift
- 20. 將字符串拆分成數組
- 21. 將字符串數組拆分成
- 22. 將字符串生成器拆分爲字符串字符串特定字符
- 23. C++如何將字符串拆分爲字符串和整數?
- 24. 將字符串拆分爲完全動態分配的字符串數組
- 25. 將字符串拆分爲字典
- 26. 拆分字符串參數並選擇該字符串數組?
- 27. 使用php將字符串拆分爲數組中的字符串
- 28. 將較長的字符串拆分爲一個較短的字符串數組
- 29. 將文本文件中的字符串拆分爲字符串數組
- 30. 將字符串拆分爲字符組的想法
http://stackoverflow.com/questions/1521921/splitting-words-into-letters-in-java – birryree 2011-03-08 16:40:24
作爲一個快速參考 「」。加入([「c」,「a」,「t」])以獲得「貓」。 – shuva 2017-12-13 18:36:41