正則表達(dá)式中具有特殊含義的字符稱之為元字符,常用的元字符有:
\ 一般用于轉(zhuǎn)義字符
^ 斷言目標(biāo)的開始位置(或在多行模式下是行首)
$ 斷言目標(biāo)的結(jié)束位置(或在多行模式下是行尾)
. 匹配除換行符外的任何字符(默認(rèn))
[ 開始字符類定義
] 結(jié)束字符類定義
| 開始一個可選分支
( 子組的開始標(biāo)記
) 子組的結(jié)束標(biāo)記
? 作為量詞,表示 0 次或 1 次匹配。位于量詞后面用于改變量詞的貪婪特性。 (查閱量詞)
* 量詞,0 次或多次匹配
+ 量詞,1 次或多次匹配
{ 自定義量詞開始標(biāo)記
} 自定義量詞結(jié)束標(biāo)記
//下面的\s匹配任意的空白符,包括空格,制表符,換行符。[^\s]代表非空白符。[^\s]+表示一次或多次匹配非空白符。 $p = '/^我[^\s]+(蘋果|香蕉)$/'; $str = "我喜歡吃蘋果"; if (preg_match($p, $str)) { echo '匹配成功'; }
元字符具有兩種使用場景,一種是可以在任何地方都能使用,另一種是只能在方括號內(nèi)使用,在方括號內(nèi)使用的有:
\ 轉(zhuǎn)義字符
^ 僅在作為第一個字符(方括號內(nèi))時,表明字符類取反
- 標(biāo)記字符范圍
其中^在反括號外面,表示斷言目標(biāo)的開始位置,但在方括號內(nèi)部則代表字符類取反,方括號內(nèi)的減號-可以標(biāo)記字符范圍,例如0-9表示0到9之間的所有數(shù)字。
//下面的\w匹配字母或數(shù)字或下劃線。 $p = '/[\w\.\-]+@[a-z0-9\-]+\.(com|cn)/'; $str = "我的郵箱是Spark.eric@imooc.com"; preg_match($p, $str, $match); echo $match[0];
請編寫一個模式,用戶匹配目標(biāo)字符串中的電話號碼。(提示:\d匹配數(shù)字)
將變量$p的表達(dá)式修改為:
$p = '/\d+\-\d+/';
請驗證,完成請求
由于請求次數(shù)過多,請先驗證,完成再次請求
打開微信掃碼自動綁定
綁定后可得到
使用 Ctrl+D 可將課程添加到書簽
舉報