一、概念
正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。
二、语法规则
1.定义规则
$reg='/自己定义的规则/';
2.符号简介
正则表达式由普通符号和元字符组成。
普通字符如下:
‘/a/’代表你就要匹配字符a
‘/a7/’代表你就要匹配字符a7
元字符:
是具有特殊意义的符号
‘/\d/’ 代表要找寻数字
常用的元字符如下:
3.匹配的方法
preg_match()
preg_match($reg,$str,[$arr]);
$reg就是自己定义的正则表达式
$str是自己要查询的字符串
$arr是匹配到的结果
如果是两个参数的情况
$str="this is daiaa num";
$reg='/a/';
//结果是1代表这个数字在字符串中存在
//结果是0代表数字在字符串中不存在
$res=preg_match($reg,$str);
var_dump($res);
如果是三个参数的情况
$str="this is daiaa num";
$reg='/a/';
//$arr返回结果是查到的字符 ['a']
$res=preg_match($reg,$str,$arr);
var_dump($arr);
preg_match_all()
preg_match()只要找到一次符合正则表达式的结果就终止了,不会再往下匹配
$str="this is num 123456";
$reg='/\d/';
//$arr返回结果是查到的字符 ['1]
$res=preg_match($reg,$str,$arr);
var_dump($arr);
preg_match_all()是匹配一次成功以后不会终止,会一直匹配到完
$str="this is num 123456";
$reg='/\d/';
//$arr返回结果是查到的字符 [1,2,3,4,5,6]
$res=preg_match_all($reg,$str,$arr);
var_dump($arr);