PHP几个常用的正则表达式示例

php 2023-06-13 654次浏览

前言

在平时开发中,作为后台填写或数据提交后的校验阶段,正则表达式的使用经常会被反复用到,但估计很多同学跟我一样,很难记住或自己从新去写,基本都是临时抱佛脚

php的正则表达式匹配,可以使用preg_match()preg_match_all()preg_replace() 等函数操作正则表达式

preg_match()

介绍:函数用于执行一个正则表达式匹配
语法:

preg_match(
    string $pattern,
    string $subject,
    array &$matches = null,
    int $flags = 0,
    int $offset = 0
): int|false

$pattern //要搜索的模式,字符串类型。
$subject //输入字符串。
$matches //如果提供了参数matches,它将被填充为搜索结果。 $matches[0]将包含完整模式匹配到的文本, $matches[1] 将包含第一个捕获子组匹配到的文本,以此类推。

常用正则示例:

//1. 匹配数字,匹配由1个或多个数字组成的字符串。
`/^\d+$/`

//2. 匹配中文字符,匹配由1个或多个中文字符组成的字符串。
`/^[\x{4e00}-\x{9fa5}]+$/u`,

//3. 匹配电子邮件地址,配符合电子邮件地址规范的字符串。
`/^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$/`,匹

//4. 匹配URL地址,匹配符合URL地址规范的字符串。
`/^(https?|ftp):\/\/[^\s/$.?#].[^\s]*$/i`,

//5. 匹配手机号码,匹配符合中国大陆手机号规范的字符串。
`/^1[34578]\d{9}$/`,

//6. 匹配IP地址,匹配符合IP地址规范的字符串。
`/^((([01]{0,1}\d{0,1}\d{1,2})|([2]{1}[0-4]{1}\d{1})|([2]{1}[5]{1}[0-5]{1}))\.){3}(([01]{0,1}\d{0,1}\d{1,2})|([2]{1}[0-4]{1}\d{1})|([2]{1}[5]{1}[0-5]{1}))$/`,

结语

以上是一些常用的正则表达式示例,可以根据需要进行修改,匹配您需要的字符串。需要注意的是,正则表达式匹配性能较差,应该尽可能缩小匹配范围或者对匹配结果进行缓存以提高性能。

PHP几个常用的正则表达式示例

喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址