官术网_书友最值得收藏!

5.7 高手私房菜

技巧1:模式修飾符、單詞界定符和方括號“[]”連用,而是和“/”在一起使用?

在PHP正則表達式的語法當中,一種是POSIX語法,一種是Perl語法。POSIX語法是先前所介紹的語法。Perl語法則不同于POSIX語法。Perl語法的正則表達是以“/”開頭和以“/”結尾的,如“/name/”便是一個Perl語法形式的正則表達。

模式修飾符則是在Perl語法正則表示中的內容。比如“i”表示正則表達式對大小寫不敏感,“g”表示找到所有匹配字符,“m”表示把目標字符串作為多行字符串進行處理,“s”表示把目標字符串作為單行字符串進行處理,忽略其中的換行符,“x”表示忽略正則表達式中的空格和備注,“u”表示在首次匹配后停止。

單詞界定符也是Perl語法正則表示中的內容。不同的單詞界定符表示不同的字符界定范圍。比如以下單詞界定符的表示意義為:

“\A”表示僅僅匹配字符串的開頭。“\b”表示匹配到單詞邊界。“\B”表示除了單詞邊界,匹配所有。“\d”表示匹配所有數字字符,等同于“[0-9]”。“\D”表示匹配所有非數字字符。“\s”表示匹配空格字符。“\S”表示匹配非空格字符。“\w”表示匹配字符串,如同“[a-zA-Z0-9_]”。“\W”表示匹配字符,忽略下劃線和字母數字字符。

技巧2:支持Perl語法形式的正則表達式有哪些?

PHP為Perl語法的正則表達方式提供了如下函數:

(1)preg_grep()用來搜索一個數組中的所有數組元素,以得到匹配元素。

(2)preg_match()以特定模式匹配目標字符串。

(3)preg_match_all()以特定模式匹配目標字符串,并且把匹配元素作為元素返回給一個特定數組。

(4)preg_quote()在每一個正則表達式的特殊字符前插入一個反斜杠“\”。

(5)preg_replace()替代所有符合正則表達式格式的字符,并返回按照要求修改的結果。

(6)preg_replace_callback()以鍵值代替所有符合正則表達式格式字符的鍵名。

(7)preg_split()按照正則模型切分字符串。

主站蜘蛛池模板: 吴桥县| 息烽县| 永城市| 佛山市| 沂南县| 曲麻莱县| 西乌| 寿光市| 高台县| 太康县| 阳曲县| 阳东县| 延吉市| 威信县| 集安市| 遂川县| 琼中| 浙江省| 安化县| 浪卡子县| 青神县| 阳高县| 凌源市| 上犹县| 南阳市| 华容县| 威海市| 涟源市| 横山县| 乌恰县| 天祝| 雷山县| 边坝县| 乌恰县| 怀化市| 呼和浩特市| 密山市| 昭苏县| 崇州市| 全南县| 玉门市|