※ 引述《HuangJC (吹笛牧童)》之銘言:
(恕刪)
: preg_match("/^redirect=([a-z0-9\.#\/\?&=\+\-_]+)/si"......
Pattern Modifiers
i表示不分大小寫
s指的是讓「.」包含換行在內的所有字元
所以在這個Pattern裡面s有一點多餘 orz
: 萬一因為版本而有相容性的問題
: 那狀況可多得不得了 :P
沒錯 orz
目前主流的正規表示式型態很多,我遇到比較多的是Perl-style的
Perl的正規表示式除了Perl自己有使用之外
PHP用的就是和Perl正規表示式相容的PCRE(相容但和Perl的不完全相同)
另外Python有re、Javascript也有RegExp,都是從Perl表示式延伸的
不過最基本的語法還是就那些,找個Perl正規表示的教學來讀一讀
基本上大概是需要用到再查就可以了
不相容的情況通常只會發生在複雜的Expression上面
先看看這篇吧:
http://en.wikipedia.org/wiki/Regular_expression
話說Perl也有提供POSIX的正規表示
http://tw.php.net/manual/en/book.regex.php
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.170.57.71