正则匹配相应知识点 str_replace("world","Shanghai","Hello world!"); //替换字符串中的指定的值,需要注意本函数区分大小写 $str1=preg_replace($pattern,$replacement,$subject); //不管替换的值有没有改变都保存 $str2=preg_filter($pattern,$replacement,$subject); //只保存发生替换的值 $arr=preg_grep($pattern,$subject); //本函数只找出能够匹配的字符,但是不进行替换,同时会过滤掉不能够进行匹配的 explode(" ",$str) //分割字符串为数组 $arr=preg_split($pattern,$subject); //升级版的explode()函数,也是把字符串分割成数组 $str=preg_quote($str); //将字符串中的正则表达式进行转译 preg_match($pattern,$subject,$m1); //输出匹配到的字符,此函数只输出第一个 preg_match_all($pattern,$subject,$m2); //输出匹配到的字符,相比于preg_match()此函数是匹配全部的字符串 ———————————————————————界定符———————————————————————————— 表示一个正则表达式的开始和结束 ———————————————————————原子————————————————————————————-- 元字符 原子的筛选方式 | 匹配两个或者多个分支的选择 [] 匹配方括号中的任意一个原子 [^] 匹配方括号中的原子之外的任意字符 原子的集合 . 匹配换行符之外的任意字符 \d 进制的数字,即[0-9] \D 匹配任意一个非匹配任意一个十十进制数字,即[^0-9] \s 匹配一个不可见原子,即[\f\n\r\t\v] (什么是不可见原子呢?就是换行符,空格等看到不到的原子) \S 匹配一个可见原子,即[^\f\n\r\t\v] (除了换行符等不可见的之外的原子,都是可见的原子) \w 匹配一个数字,字母或下划线,即[0-9a-zA-Z] \W 匹配任意的一个非数字,字母或下划线,即[^0-9a-zA-Z] 量词 {n} 表示其前面的原子恰好出现n次 {n,} 表示其前面的原子最少出现n次 {n,m} 表示其前面的原子至少出现n次,最多出现m次 * 匹配0次,1次多次之前出现的原子,即{0,} + 匹配1次或者多次其之前出现的原子,即{1,} ? 匹配0 次或者1次其之前出现的原子,即{01,} 边界控制与模式单元 ^ 匹配字符串开始的位置 $ 匹配字符串结束的位置 () 匹配其中的整体为一个原子 常见的修正模式 U 懒惰匹配 i 忽略英文字符大小写 x 忽略空白 s 让元字符' . '匹配包括换行符在内的所有字符