登录  /  注册

php正则表达式中preg_match函数的详解

黄舟
发布: 2017-11-11 11:03:36
原创
13128人浏览过

我们之前给大家介绍了php正则表达式的使用,入门,以及验证邮箱地址,那么我们今天就想大家介绍php正则表达式中的函数preg_match,preg_match函数在php正则表达式中的规则是怎样的?

PHP正则表达式preg_match函数的使用:

利用 preg_match(),可以完成字符串的规则匹配。如果找到一个匹配,preg_match() 函数返回 1,否则返回 0。还有一个可选的第三参数可以让你把匹配的部分存在一个数组中。在验证数据时这个功能显得非常重要以及有用。

$string = "php爱好者";
 if (preg_match('/php/', $string))
{
// 匹配正确
}
登录后复制

上面的例子将成功匹配,因为“php爱好者”里面包含 php。现在我们来试一个更复杂的,例如验证一个 Email 地址。

$string = "first.last@domain.uno.dos";
if (preg_match( '/^[^0-9][a-zA-Z0-9_]+
([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+ ([.]
[a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/', $string))
{
// 验证Email地址
}
登录后复制

这个例子将验证出此 Email 地址为正确格式。


PHP正则表达式preg_match的规则:

通过上面实例的演示我们来了解下这段正则表达式所代表的各种规则。
PCRE 顾名思义,与在 Perl 中的正则表达式有相同的语法,所以每段正则表达式必须要有一对定界符。我们一般使用 / 为定界符。
开头的 ^ 和结尾的 $ 让PHP从字符串开头检查到结尾。假使没有 $,程序仍会匹配到 Email 的末尾。
◆[ 和 ] 被用来限制许可输入类型。例如 a-z 允许所有的小写字母,A-Z 允许所有的大写字母,0-9 所有数字,等等,以及更多其他类型。
◆{ 和 } 被用来限制期望的字符数。例如 {2,4} 表示字符串的每一节可以有 2-4 字符长度,像是 .com.cn 或 .info。在这里, "." 并不算一个字符,因为 {2,4} 之前定义的许可输入类型只有大小写字母,故此段只匹配大小写字母
◆( 和 ) 被用来合并小节,并定义字符串中必须存在的字符。(a|b|c) 能够匹配 a 或 b 或 c。
◆(.) 将匹配所有字符,而 [.] 只匹配 "." 本身。
要使用一些符号本身,必须在前增加一个 。这些字符有:( ) [ ] . * ? + ^ | $

总结:

preg_match()函数在php正则表达式中进行匹配,第一次匹配成功后就会停止匹配,如果要实现全部结果的匹配,希望对你工作有所帮助!

相关推荐:

php正则表达式验证邮箱地址的案例


php正则表达式的实例分析


php正则表达式入门详解


最实用的十个PHP正则表达式

以上就是php正则表达式中preg_match函数的详解的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号