作者omidofor (媽媽咪呀)
看板java
標題[問題] 關於正則表示式的split
時間Thu Jan 10 15:28:22 2013
String a = "123
XXX456789
XXX00
XXX…"
String b[] = a.split("
XXX");
XXX是正則表示式,
因此我不確定各個
XXX的長度是多少。
執行後b的值為:
123、456789、00、…
但是我想要讓每個值前面都加上他原本的
XXX,
就像:
123、
XXX456789、
XXX000、
XXX…
要達成這樣的結果該怎麼做呢?
我想了幾個迂迴的方法都湊不到這樣的結果,
請教各位先進了,謝謝。
--
│▃▃▃▃▃▃▃ ● ▃▃█ ▃▃▃▃ ██▃▃▃▃▃▃▃▃│
│ ▇▇▇ ▇▇▇ ▇ ▇▇█ ▇▇▇ ▇█▇ ▇▇▇ ▇ ▇ │
│ █ █ ▉▉█ █ █ █ █ █ █ █ █ ██◤
◢│
│ ███ ▉▉█ █ ███ ███ █ ███ █
▄ ◆│
│▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄██│ By luh4
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.222.98
→ zhouer:123 前面本來就沒有 XXX 怎麼跑出來的? 01/10 15:34
修改了原本錯誤的結果
※ 編輯: omidofor 來自: 140.115.222.98 (01/10 15:36)
推 TsaiCF:String b[] = a.split("(?=XXX)"); 01/10 15:42
→ TsaiCF:不過XXX 也是 REGEX的話, 可能要用Pattern/Matcher 處理!? 01/10 15:48
突然想到一個笨方法解決了@@
for(String str: b){
a.replace(str,"-;-");
}
String c[] = a.split("-;-");
這樣就可以了。
※ 編輯: omidofor 來自: 140.115.222.98 (01/10 16:10)