我有串這樣的:拆分字
aaaaaas#aa##aa
而且我想用split()
和正則表達式來完成這個algoritm:
- 得到5個第一個字符
- 如果它有一些非單詞字符,剪成最後一個非單詞字符,包括非單詞字符
- 如果它沒有任何非單詞字符,這5個字符
- 從去年切割重複,直到字符串結尾這個例子的
回報應該是這樣的:
aaaaa
as#
aa##
aa
甚至可以用正則表達式和split()
?這
.*([\W]+)\W
給我去年非文字字符的字符(例如它會aaaaaas#aa##
),但如何將其組到最大。 5個字符,分裂並繼續從前一場比賽結束?
https://regex101.com/r/xA9kG3/14
輸入'a#a#a#a#'是否被分割爲'a#','a#','a#','a#',或者被分割爲'a#a#','a#a#' ?子彈1表示爲*「得到5個字符」*,即'a#a#a',然後符號2表示爲*「剪切爲**最後**非單詞字符」*,即'A#A#'。但是,你是否認爲它會在「#」後切斷? – Andreas
在我的(現在已刪除的答案)下的OP註釋'aa ##### aa應該輸出aaa ##,## aa,因爲最後一個字短於5個字符,我沒有提到它。所以我應該添加子彈:如果拆分的單詞是最後5個字符或更短,然後5個字符(因此它們是字符串中的最後一個字符)返回它' – Pshemo
說實話你的問題看起來像[X/Y問題](http:// meta .stackexchange.com /問題/ 66377 /什麼,是最XY-問題)。你給了我們一些步驟,但我們仍然不知道*有什麼意義*?也許你正在尋找像這樣的東西:http://stackoverflow.com/questions/25853393/split-a-string-in-java-into-equal-length-substrings-while-maintaining-word-bound? – Pshemo