//preg_match()函數(shù)用于進(jìn)行一次正則表達(dá)式匹配
//preg_match([1-正則表達(dá)式],[2-匹配的變量],[3-匹配返回的數(shù)組])
//preg_match()返回匹配的次數(shù)
1、定界符:使用 / / 作為定界符
2、正則表達(dá)式有兩個(gè)定界符分別為引號定界符,//;
3、定界符是必須的,否則不會識別。
正則表達(dá)式中,原子是組成正則表達(dá)式的最小單位
3-1:正則的字符可以分為:
3-1-1:普通字符:字母,數(shù)字,下劃線
3-1-2:所有的特殊字符
3-1-3:所有的非打印字符
3-2: 正則的功能字符為:
3-2-1: \d[匹配所有的數(shù)字]
3-2-2: \D[匹配所有的非數(shù)字]
3-2-3: \s[匹配所有的空格]
3-2-4: \S[匹配所有的非空格]
3-2-5: \w[匹配所有的數(shù)字,字母,下劃線]
3-2-6: \W[匹配所有不是數(shù)字,字母,下劃線]
3-2-7: \V[匹配轉(zhuǎn)義字符]
3-2-8: . [點(diǎn)號是無敵的,除去\n之外,其他全匹配出來]
4、詞邊界修飾符,功能可以用于分割單詞的都是非字母下劃線,比如空格
詞邊界只有英文有效,中文是無效的;
5、原子列表(重點(diǎn))
5-1-1:[abc] 可選列表,只能是原子列表中的一個(gè)字符
5-1-2:[4-6] 連續(xù)列表,456都可以匹配
5-1-3:[^abc] 排除列表,排除了a,b,c
原子修飾符
5-2-1: * 匹配前面的表達(dá)式零次或多次
5-2-2: + 匹配前面的表達(dá)式一次或多次
5-2-3: \? 匹配前面的表達(dá)式零次或一次
5-2-4: {n} 匹配前面的表達(dá)式確定的數(shù)值n次
5-2-5: {n,m}最少匹配n次最多匹配m次
5-2-6: {n,} 最少匹配n次
6、字符串邊界
1、以指定字符^開頭
2、以指定字符結(jié)尾$
3、^字符串$精確匹配字符串
7、選擇修飾符
a|b 匹配a或者匹配b
abc|def 匹配abc的優(yōu)先級會比匹配def的優(yōu)先級高
ab(c|d)ef 匹配abcef或abdef
8、后向引用
1、后向引用,即正則當(dāng)中,有出現(xiàn)一模一樣規(guī)律的,可以將其()用括號擴(kuò)起來,在單條正則當(dāng)中進(jìn)行調(diào)用
2、/(a\w)/ 如后面陪陪的是 a3 a7 a8 可以用\1這樣的方式來調(diào)用
3、如第二個(gè)括號,則是\2,如此類推
9、模式修飾符
分別有:
1、i 忽略大小寫
2、x 忽略空白
3、s 視為一行,可以匹配\n
4、m 視為多行,不可以匹配\n
5、U 改變貪婪模式(貪婪模式即盡量多的匹配更多的字符);
模式修飾符的使用方法:
$preg = '/b\w*/i'; 忽略了大小寫;
微信掃碼
關(guān)注PHP中文網(wǎng)服務(wù)號
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號