本章要点:正则表达式概念模式匹配的使用正则表达式的编写正则表达式搜索和替换利用正则表达式分割字符串第8章PHP中的正则表达式及式样匹配8.
1正则表达式简介8.
1.
1正则表达式概念正则表达式(RegularExpression),又称正规表达式,简单地说就是若干字符组成的单个字符串,它可以描述或者匹配一系列符合某个句法规则的字符串.
在很多文本编辑器或其他工具里,正则表达式通常被用来检索或替换那些符合某个模式的文本内容.
正则表达式由一些普通字符和一些元字符组成,其中,不同的元字符分别代表不同的特殊含义,它们是实现模式的编码,普通字符包括大小写字母、数字,大多数数字字符在模式中表示它们自身并匹配目标中相应的字符.
8.
1.
2常用的正则表达式及举例要匹配的内容正则表达式网址URL^[a-zA-z]+://(\w+(-\w+w+(-\w+S*)$年-月-日/^\d{4}-(0\d|1[012])-(0\d|[12]\d|3[01])$/IP地址^(d{1,2}|1dd|2[0-4]d|25[0-5]).
(d{1,2}|1dd|2[0-4]d|25[0-5]).
(d{1,2}|1dd|2[0-4]d|25[0-5]).
(d{1,2}|1dd|2[0-4]d|25[0-5])$中文字符[\u4e00-\u9fa5]空行\n[\s|]*\rHTML标记1>首尾空格(^\s*)|(\s*$)Email地址"^([w-0-9]{1,3}.
[0-9]{1,3}.
[0-9]{1,3}.
)|(([w-a-zA-Z]{2,4}|[0-9]{1,3}腾讯QQ号^[1-9]*[1-9][0-9]*$邮政编码^[1-9]\d{5}$电话号码^((\(\d{2,3}\))|(\d{3}0\d{2,3}\)|0\d{2,3}-)[1-9]\d{6,7}(\-\d{1,4})$手机号码^((\(\d{2,3}\))|(\d{3}\-))13\d{9}$sql语句^(select|drop|delete|create|update|insert).
*$以字母开头,允许5-16字节、允许字母数字下划线的帐号^[a-zA-Z][a-zA-Z0-9_]{4,15}$中文、英文、数字及下划线^[\u4e00-\u9fa5_a-zA-Z0-9]+$8.
2模式匹配函数1匹配字符串正则表达式编写完以后就可以使用模式匹配函数来处理指定字符串,其中,字符串的匹配是正则表达式的主要应用之一.
在PHP中,和preg_match()函数功能类似的还有两个函数,它们也是用于匹配正则表达式的:ereg()和eregi()函数.
2替换字符串用于替换字符串的函数主要有两个,一个是preg_replace()函数,它是Perl兼容正则表达式函数;一个是ereg_replace()函数,它是POSIX扩展正则表达式函数.
3用正则表达式分割字符串PHP程序支持两种用于对字符串进行分割的正则表达式函数,一种是Perl兼容正则表达式函数preg_split()函数,一种是POSIX扩展正则表达式函数split()函数.
4转义正则表达式字符1程序功能介绍2程序代码分析8.
4案例剖析:新用户注册程序8.
5本章小结本章为读者介绍了PHP中正则表达式,首先让读者了解什么是正则表达式、正则表达式的构成、正则表达式的语法等基础知识,然后着重介绍了几种常用的正则表达式函数的功能和使用方法,最后通过典型案例来进一步深入讲述正则表达式的使用方法.
在讲述本章过程中介绍了很多实证例子,希望读者能很快熟悉正则表达式的应用.
乌云数据主营高性价比国内外云服务器,物理机,本着机器为主服务为辅的运营理念,将客户的体验放在第一位,提供性价比最高的云服务器,帮助各位站长上云,同时我们深知新人站长的不易,特此提供永久免费虚拟主机,已提供两年之久,帮助了上万名站长从零上云官网:https://wuvps.cn迎国庆豪礼一多款机型史上最低价,续费不加价 尽在wuvps.cn香港cera机房,香港沙田机房,超低延迟CN2线路地区CPU...
官方网站:点击访问酷番云官网活动方案:优惠方案一(限时秒杀专场)有需要海外的可以看看,比较划算29月,建议年付划算,月付续费不同价,这个专区。国内节点可以看看,性能高IO为主, 比较少见。平常一般就100IO 左右。优惠方案二(高防专场)高防专区主要以高防为主,节点有宿迁,绍兴,成都,宁波等,节点挺多,都支持防火墙自助控制。续费同价以下专场。 优惠方案三(精选物理机)西南地区节点比较划算,赠送5...
webhosting24决定从7月1日开始对日本机房的VPS进行NVMe和流量大升级,几乎是翻倍了硬盘和流量,当然前提是价格依旧不变。目前来看,国内过去走的是NTT直连,服务器托管机房应该是CDN77*(也就是datapacket.com),加上高性能平台(AMD Ryzen 9 3900X+NVMe),这样的日本VPS还是有相当大的性价比的。官方网站:https://www.webhosting...