自動目錄
PERL 正規表達式(Regular Expression, Regex)會用到的符號
各種字元
^ 從字串開始 /^abcd/ => abcdefg O, 123abcd X
$ 到字串結尾 /abcd$/ => abcdefg X, 123abcd O
. 除了換行外的任一字元 /ab.d/ => abcd O, ab2d O, abccd X, ab\nd X
* 出現0次以上 /ab*cd/ => abbbcd O, acd O, ab123cd X
+ 出現1次以上 /ab+cd/ => abcd O, acd X, ab123cd X
? 可有可無 /ab?cd/ => abcd O, abbcd X, acd O
| 或 /[a|b|cd]efg/ => aefg O, befg O, cdefg O, abefg X, nefg X
( ) 群組 /((a*b)c)d/
[ ] 字元串、字元組合 /[\w]+/ 123 X, abc O
{ } 重覆 /abc{3}/ => abcccdd O, abc X
\ 脫逸字元 /a\.cd/ => abcd X, a.cd O, 123a.cd O
重覆
* a* a出現0次以上
+ a+ a出現1次以上
? a? a可有可無
{m} a{m} a出現m次
{m,} a{m,} a出現m次以上
{m,n} a{m,n} a出現m到n次
控制字元
\0 空字元 Null
\e esc
\f 送紙
\t tab
\n 換行newline
\r 回行首 return (CR)
\x 十六進位字元
字元集(群組)或特殊字元
範例請參考 [PERL] Regex 字元集(群組)
\s 空白字元 代表 [ \t\r\n\f] <==注意\t 前有一個空白
\S 非空白字元 [^\s]
\d 數字字元 [0-9]
\D 非數字字元 [^0-9]
\w 文字字元 [0-9a-zA-Z_] <== 注意有下底線 '_'
\W 非文字字元 [^\w]
\b 文字邊界 \bthe\b
\B 非文字邊界