关于php正则表达式的详解

夏蝉10个月前未分类88

正则表达式是一种用于搜索、匹配、替换某种文本的字符串模式,常用于处理文本数据、校验输入数据等。在PHP中,可以使用preg系列函数(preg_match、preg_replace等)处理正则表达式。

正则表达式的语法

正则表达式语法包含了一些特定的字符和语法规则,常用的语法规则包括:

1、字符匹配:使用单个字符匹配特定的字符,如字符a匹配输入字符串中的字符a。

2、字符集合:使用字符集合匹配一组字符,如[abc]匹配输入字符串中的字符a、b、c。

3、量词:用于指定字符或字符集合出现的次数,如a{3}匹配aaa。

4、选择符:用于匹配多个可选的内容,如a|b匹配a或b。

5、分组:用于对正则表达式的一部分进行分组,方便后续操作,如(a|b){3}匹配aaa、aab、aba等。

6、反义:用于匹配除了指定字符或字符集合之外的内容,如[^abc]匹配输入字符串中除了a、b、c之外的字符。

php中正则表达式的使用

1、php正则匹配手机号

$pattern = '/^1[3-9]\d{9}$/';

$mobile = '13912345678';

if(preg_match($pattern, $mobile)){

echo '匹配成功';

}else{

echo '匹配失败';

}

注意:由于手机号的格式固定,可以使用量词与字符集合,匹配以1开头,第二位3到9的数字,后面为9位数字的手机号。

2、php中正则表达式替换标签

$pattern = '/<[^>]+>/';

$content = '

这是一段有着大标题的文本

';

$result = preg_replace($pattern, '', $content);

echo $result;

注意:上面的正则使用了字符集合和量词,匹配一段HTML标签(以<开头,非>字符的内容,以>结尾)。在替换时,将匹配到的标签替换成空字符,即删除了所有HTML标签。

3、php正则表达式提取url

$pattern = '/[a-zA-z]+:\/\/[^\s]*/';

$link = '这是一篇示例文章来源:https://www.73so.com。';

preg_match($pattern, $link, $matches);

$domain = parse_url($matches[0])['host'];

echo $domain;

注:上面的正则表达式使用了字符集合、量词和分组,匹配一段URL链接。

相关文章

我是第二篇测试的文章

这是我的第二篇测试文章。...

动态加载js脚本文件的几种方法

在前端的web设计中,由于某些需要可能会对一些JS文件进行动态的加载。而这里的动态加载js文件也需要用js脚本来完成,下面的博文中就简单的介绍一下。js动态加载js文件的方法方法1:使用 docume...

关于DDoS攻击的趋势与防御

在探讨DDoS之前我们需要先对DoS有所了解,DoS泛指黑客试图妨碍正常使用者使用网络上的服务,例如剪断大楼的电话线路造成用户无法通话。而以网络来说,由于频宽、网络设备和服务器主机等处理的能力都有其限...

[公众号引流]咖啡品牌排行榜前十名(探索咖啡界的佼佼者)

[公众号引流]咖啡品牌排行榜前十名(探索咖啡界的佼佼者)

文章咖啡作为一种广受欢迎的饮品,其种类繁多,每一款咖啡都有其独特的口感和风味。在众多咖啡品牌中,有一些名气较大、质量优良的咖啡,为消费者提供了更多的选择。本文将介绍咖啡界的佼佼者,即咖啡品牌排行榜前十...

在html页面中调用php代码的方法

现在的动态网页一般都是php编程语言与html标记语言混合编写的,php编程代码负责数据的处理与输出,而html代码负责web页面的样式设计。那php与html语言如何的混合编写呢?下面就说一说怎么在...

如何查看手机网卡的mac地址

在一些可以联网的设备中都会有一个类似网卡的硬件设备,而这个网卡的设备都会有一个mac地址,这个mac地址可以说是网卡设备的硬件标识符,它可以帮助你在本地网络上找到您的设备。手机上查看网卡mac网址的方...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。