登录
首页 >  文章 >  php教程

PHP正则匹配实例:preg_match使用教程

时间:2026-01-10 21:07:59 208浏览 收藏

“纵有疾风来,人生不言弃”,这句话送给正在学习文章的朋友们,也希望在阅读本文《PHP正则匹配实例:preg_match用法详解》后,能够真的帮助到大家。我也会在后续的文章中,陆续更新文章相关的技术文章,有好的建议欢迎大家在评论留言,非常感谢!

答案:preg_match函数用于正则匹配,可提取邮箱、验证手机号、抓取HTML内容及识别日期。通过定义模式如/\w+@\w+.\w+/、/^1[3-9]\d{9}$/等,结合$matches获取结果,返回1为匹配成功。

PHP正则表达式如何匹配内容_PHP函数preg_match的使用实例

如果您需要从一段文本中提取符合特定模式的内容,可以使用PHP的preg_match函数来实现。该函数通过正则表达式对字符串进行匹配,并返回第一个匹配结果。以下是关于如何使用preg_match函数的多个实例说明:

一、基本语法与结构

preg_match函数用于执行正则表达式的模式匹配,其基本语法为:int preg_match ( string $pattern , string $subject [, array &$matches ] )。该函数搜索由模式定义的字符串,并在找到第一个匹配项后停止。可选的$matches参数会存储匹配到的内容。

1、$pattern 表示正则表达式模式,必须包含分隔符,如斜杠 /。

2、$subject 是要搜索的目标字符串。

3、$matches 是一个数组,保存匹配结果;索引0元素为完整匹配,后续为子组匹配。

4、函数返回值为1表示找到匹配项,0表示未找到,false表示发生错误。

二、提取邮箱地址

通过构造匹配邮箱格式的正则表达式,可以从一段文本中提取出第一个符合规则的邮箱地址。

1、定义正则表达式模式:/[\w\.\-]+@[\w\-]+(\.[\w\-]+)+/,该模式能匹配常见的邮箱格式。

2、设置目标字符串,例如 "联系我:admin@example.com 或 support@site.org"。

3、调用preg_match函数并将结果存入$matches变量。

4、输出$matches[0]即可获得提取的邮箱地址。

三、验证手机号码

利用preg_match可以判断一个字符串是否符合中国大陆手机号码的格式规范。

1、使用模式:/^1[3-9]\d{9}$/ 来匹配以1开头,第二位为3至9之间,总长度为11位的数字串。

2、将待检测的手机号(如"13812345678")作为$subject传入。

3、执行preg_match,若返回值为1,则表示号码格式正确。

4、可通过条件判断输出验证结果。

四、提取HTML标签中的内容

当需要从HTML代码中抓取某个标签内的文本时,可用preg_match配合捕获组实现。

1、编写模式:/(.*?)/i,其中(.*?)用于捕获

之间的内容。

2、提供包含

示例页面的HTML字符串作为输入。

3、执行匹配操作,检查$matches数组是否存在且$matches[1]有值。

4、打印$matches[1]即可得到网页标题内容。

五、匹配日期格式

可用于识别形如YYYY-MM-DD的日期字符串是否合法存在。

1、设定正则表达式:/\b\d{4}-\d{2}-\d{2}\b/,匹配四位年份、两位月份和两位日。

2、准备测试文本,例如:"今天的日期是2025-04-05。"

3、调用preg_match函数并传入$matches参数。

4、若匹配成功,$matches[0]将包含"2025-04-05"。

文中关于的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《PHP正则匹配实例:preg_match使用教程》文章吧,也可关注golang学习网公众号了解相关技术文章。

前往漫画官网入口并下载 ➜
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>