当我们需要根据某种规则匹配文本中的内容时,经常使用正则表达式。PHP是一门非常流行的编程语言,而其内置的正则表达式函数库也相当强大,可以帮助我们完成许多文本匹配工作。本文将提供一份介绍最常用的PHP正则表达式的文档,以下是完
当我们需要根据某种规则匹配文本中的内容时,经常使用正则表达式。PHP是一门非常流行的编程语言,而其内置的正则表达式函数库也相当强大,可以帮助我们完成许多文本匹配工作。本文将提供一份介绍最常用的PHP正则表达式的文档,以下是完整攻略:
最常用的PHP正则表达式收集整理
基本元素
字符
字符是正则表达式的最基本组成部分。可以用于匹配字面值(如“a”、“b”等)或字符区间(如"a-z")等。
示例1:匹配任意一个不是字母的字符。
preg_match("/[^a-zA-Z]/", $str, $matches);
字符类
字符类用于匹配一类字符。常用的字符类包括\d
(匹配数字)、\w
(匹配字母或数字)、\s
(匹配空格、制表符、换行符等)等。
示例2:匹配字符中是否包含至少一个数字。
preg_match("/\d+/", $str, $matches);
重复次数限定符
重复次数限定符用于指定某个字符或子模式出现的次数。常用的重复次数限定符包括+
(匹配1次或多次)、*
(匹配0次或多次)、?
(匹配0次或1次)等。
示例3:匹配任意出现3次的数字。
preg_match("/\d{3}/", $str, $matches);
匹配位置
锚点
锚点用于匹配字符串的特定位置,而不是字符。锚点有两种,分别是行首锚点^
和行尾锚点$
。
示例4:匹配字符串是否以数字开头。
preg_match("/^\d/", $str, $matches);
词边界
词边界用于匹配单词的边界。单词边界指单词字符与非单词字符之间的位置。常用词边界元字符为\b
。
示例5:匹配含有“hello”的单词。
preg_match("/\bhello\b/", $str, $matches);
捕获和非捕获
捕获组
捕获组用于匹配并且标记出某个子模式的匹配结果。捕获组可以使用()
包围起来,同时也可以使用\1
、\2
等后向引用来引用先前捕获的结果。
示例6:匹配以“hello”开头,以“world”结尾的字符串。
preg_match("/^(hello)(.*)(world)$/", $str, $matches);
非捕获组
非捕获组类似于捕获组,但是它不对匹配结果进行标记,也就是不记录在匹配结果中。它可以使用(?:)
来表示。
示例7:匹配含有连续的三个数字的字符串。
preg_match("/(?:\d{3})+/", $str, $matches);
总结
PHP正则表达式包含了非常强大和丰富的功能,以上只是最常用的表达式之一。我们应该在日常实践中,多多接触正则表达式,加强自身的实战经验。
本文标题为:最常用的PHP正则表达式收集整理
基础教程推荐
- thinkphp实现like模糊查询实例 2024-03-28
- Larave框架通过sanctum进行API鉴权详解 2023-06-26
- PHP实现桶排序算法 2022-10-05
- 对laravel的csrf 防御机制详解,及form中csrf_token()的存在介绍 2023-03-12
- php解决安全问题的方法实例 2023-02-13
- laravel实现简单用户权限的示例代码 2023-01-19
- PHP中unset,array_splice删除数组中元素的区别 2024-01-17
- 解析php获取字符串的编码格式的方法(函数) 2023-08-03
- php微信公众号开发之音乐信息 2022-11-25
- PHP实现发送微博消息功能完整示例 2023-03-17