PHP正则表达函数
常用的正则表达式函数
1、preg_match() 与 preg_match_all()
*preg_match ( $pattern, $subject, [ array &$matchs ] ); //执行正则表达式匹配
*preg_match_all ( $pattern, $subject, array &$matches ); //执行一个全局正则表达式匹配
返回结果:匹配到结果的数;
参数说明:
pattern:要搜索的模式,字符串类型
subject:输入字符串
matches:preg_match 只作一次匹配,只返回0或1个结果数。 $matches将包含完整模式匹配到的文本。
例1:
例2:
例3:
2、preg_replace ( $pattern, $replace, $subject ) //执行一个正则表达式的搜索和替换
preg_filter ( $pattern, $replace, $subject )//执行一个正则表达式搜索和替换
pattern:要搜索的模式,可以使一个字符串或者字符串数组
replace: 用于替换的字符串或者字符串数组
subject :要进行搜索和替换的字符串或字符串数组
返回值:如果subject是一个数组,返回一个数组, 其他情况返回一个字符串
preg_replace 替换会把每一个数组中的元素都进行一次匹配替换,无论有没有匹配成功,返回值中的元素都会保留,而preg_filter 只会保留匹配成功的元素
如果没有找到匹配或者发生了错误,当subject是数组 时返回一个空数组,其他情况返回NULL
3、preg_grep ( $pattern, array $input ) // 返回匹配模式的数组条目
pattern 要搜索的模式,字符串形式
input 输入数组
preg_grep针对 subject 中的每一个元素都进行了匹配,且结果只会打印匹配到的数据
4、preg_split ( $pattern, $subject ) // 通过一个正则表达式分隔字符串
pattern 用搜索的模式,字符串形式。
subject 输入字符串
通过正则表达式匹配字符串,将字符串按正则拆分成数组
如果没有成功匹配,将会返回一个数组,包含了单个元素,即输入的字符串
5、preg_quote($str) //转义正则表达式字符
preg_quote()需要参数 str 并向每个正则表达式语法中的字符前增加一个反斜线。
正则表达式特殊字符有: . \ + * ? [ ^ ] $ ( ) { } = ! < > | : -
注意 :/ 不是正则表达式特殊字符
注:学习笔记