作者AI3767 (星泉幼子)
看板java
標題Re: [閒聊] Java中的regular expression
時間Sat Jun 6 23:38:14 2009
簡單的說
java 的字串要表示一些特定的非一般文字的字元,
要用 "\" 來分辨, 例如: "\n" , "\t" 等等
因此, 真的要用 "\" 時, 字串的寫法就要寫成 "\\"
而 寫一個regular expression用的字串
在java裡定義了一些特定的集合來用
像是 "\w" 表示了 a到z A到Z 和 0~9 共62個字元的集合
但是若是要表示純粹像是 "\w" 這樣的文字,
而不是regular expression裡所特定的集合, 怎麼辦?
所以, 只好 "\\w" 來分辨
再加上字串要寫成 "\\" 才能表示 "\"
因此, 原本regular expression 的 "\\w"
在字串的寫法就要寫成 "\\\\w"
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.123.105.149
推 kene:原po正解, 這就是我前幾篇推文"要 escape 兩遍"的原因~ 06/07 00:38
→ Holocaust123:這篇就是我想講的意思...看來我寫的太模糊了 06/07 01:19