作者PsMonkey (痞子軍團團長)
看板java
標題Re: [問題] split 用 "."來切
時間Sat Nov 21 06:05:42 2009
※ 引述《pilisir (SIR)》之銘言:
: 因為要切割的字串是ip格式
: 所以用了split(".")來切
: 可是切不了,會出現錯誤
: 相同程式碼換成":"來測試,是正常的
: 跳脫字元也找不到相關的,用了"\."當然也是錯
: 請問該怎麼打才能用.來切呢
: 推 etman395:s="a.b.c" s=s.replace(".", "1") s2[]=s.split("1") 11/21 03:24
推文沒有講到重點(好歹也把 "1" 換成 "z" 嘛,人家是 ip 阿 XD)
重點是 String.split() 吃得是 regular expression
http://java.sun.com/j2se/1.5.0/docs/api/java/util/regex/Pattern.html#sum
「.」在 RegExp 當中有特出意義
要怎麼辦呢?
答案是「[..]」
坦白說,我是亂 try 出來的... [毆飛]
--
侃侃長論鮮窒礙 首頁:
http://www.psmonkey.idv.tw
眾目睽睽無心顫 Blog:
http://ps-think.blogspot.com
煢居少聊常人事
殺頭容易告白難 歡迎參觀 Java 版(@ptt.cc)精華區 \囧/
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.20.172.3
→ LPH66:其實 [.] 就可以了 [ ] 中間是 char class 一個即可 11/21 06:10
推 snowlike:也可以"\\." 11/21 08:00
推 slalala:我剛剛看到1 快笑死XD 11/21 10:39
推 pilisir:原來有好幾種方法可以用,感謝各位解答 11/21 11:27
推 etman395:=========== ========================又笑我 11/21 17:04
→ TonyQ:我也大笑 哈哈哈哈哈.....真是可愛 11/21 18:08
推 Sofya:請問為何"\."會出錯而"\\."才能正確跳脫?兩者有何差別? 11/24 21:17
→ mysterio:java裡沒有\.這個跳脫字元,前面再加上\成為\\ 編譯器才會 11/24 21:30
→ mysterio:視為文字 SCJP6.0認證教戰手冊說的 11/24 21:32