//preg_match()函数用于进行一次正则表达式匹配
//preg_match([1-正则表达式],[2-匹配的变量],[3-匹配返回的数组])
//preg_match()返回匹配的次数
1、定界符:使用 / / 作为定界符
2、正则表达式有两个定界符分别为引号定界符,//;
3、定界符是必须的,否则不会识别。
正则表达式中,原子是组成正则表达式的最小单位
3-1:正则的字符可以分为:
3-1-1:普通字符:字母,数字,下划线
3-1-2:所有的特殊字符
3-1-3:所有的非打印字符
3-2: 正则的功能字符为:
3-2-1: \d[匹配所有的数字]
3-2-2: \D[匹配所有的非数字]
3-2-3: \s[匹配所有的空格]
3-2-4: \S[匹配所有的非空格]
3-2-5: \w[匹配所有的数字,字母,下划线]
3-2-6: \W[匹配所有不是数字,字母,下划线]
3-2-7: \V[匹配转义字符]
3-2-8: . [点号是无敌的,除去\n之外,其他全匹配出来]
4、词边界修饰符,功能可以用于分割单词的都是非字母下划线,比如空格
词边界只有英文有效,中文是无效的;
5、原子列表(重点)
5-1-1:[abc] 可选列表,只能是原子列表中的一个字符
5-1-2:[4-6] 连续列表,456都可以匹配
5-1-3:[^abc] 排除列表,排除了a,b,c
原子修饰符
5-2-1: * 匹配前面的表达式零次或多次
5-2-2: + 匹配前面的表达式一次或多次
5-2-3: \? 匹配前面的表达式零次或一次
5-2-4: {n} 匹配前面的表达式确定的数值n次
5-2-5: {n,m}最少匹配n次最多匹配m次
5-2-6: {n,} 最少匹配n次
6、字符串边界
1、以指定字符^开头
2、以指定字符结尾$
3、^字符串$精确匹配字符串
7、选择修饰符
a|b 匹配a或者匹配b
abc|def 匹配abc的优先级会比匹配def的优先级高
ab(c|d)ef 匹配abcef或abdef
8、后向引用
1、后向引用,即正则当中,有出现一模一样规律的,可以将其()用括号扩起来,在单条正则当中进行调用
2、/(a\w)/ 如后面陪陪的是 a3 a7 a8 可以用\1这样的方式来调用
3、如第二个括号,则是\2,如此类推
9、模式修饰符
分别有:
1、i 忽略大小写
2、x 忽略空白
3、s 视为一行,可以匹配\n
4、m 视为多行,不可以匹配\n
5、U 改变贪婪模式(贪婪模式即尽量多的匹配更多的字符);
模式修饰符的使用方法:
$preg = '/b\w*/i'; 忽略了大小写;