正则表达式

特殊原子

  • \d:匹配0-9任意一个字符
  • \D:匹配0-9以外任意一个字符
  • \w:匹配0-9、a-z、A-Z、_  中任意一个字符
  • \W:匹配0-9、a-z、A-Z、_ 以外的任意一个字符
  • \s:匹配任何空白字符,\t、\n(换行)、\r(回车)
  • \S:匹配任何非空白字符,与\s相反
  • \b:匹配单词边界(不常用)
  • \B:匹配非词边界(不常用)
  • []:匹配[]里边的任意一个字符
  • ^:代表给原子取反,必须在[]里面
  • .:匹配除了\n之外的任意一个字符

元字符:修饰原子

  • *:匹配前边一个原子至少出现0次或任意次数
  • +:匹配前边一个原子至少出现1次或任意次数
  • ?:匹配前边一个原子至少出现0次或1次
  • {}:限制前边一个原子的出现次数

{m}:匹配m次

{n,m}:匹配n-m次

{m,}:匹配至少m次

{,m}:错误的写法

  • ^:匹配字符串的开头
  • \A:匹配字符串的开头(不常用)
  • $:匹配字符串的结尾
  • \Z:匹配字符串的结尾(不常用)
  • |:或者的意思
'/{1|2|3}/'
  • ():指定子表达式
'/zha(n|g)san/'

 

模式修饰符

  • i:不区分大小写
  • m:将字符串视为多行
  • s:将字符串视为单行
  • x:忽略正则中的空格
  • A:和^一样,匹配开头
  • U:非贪婪匹配
  • .+?:非贪婪匹配

.* 和.+就是匹配全部的意思,加上?就是非贪婪

  • .*?:非贪婪匹配

正则函数

  • preg_match($pattern, $subject, $matches):

只匹配一次,匹配成功返回1,失败返回0

$pattern:正则表达式

$subject:匹配的信息

$matches:匹配成功返回的结果,存在$matches中,并且为一个数组

  • preg_match_all($pattern,$subject,$matches):

匹配所有,其他和上边一样

  • preg_replace($pattern,$replace,$str):

如果匹配成功,返回替换后的字符串,否则返回原字符串

  • preg_split($pattern,$str):

用给定的字符串进行分割

邮箱正则

123asdjhajk@asdkjs123.sa.sda.com
'/\w+@(\w+.?)+/'

url正则

http://www.baidu.com:80/index.php?a=asd&b=sada
'/https?:\/\/(\w.)+\w+(:\d+)?(\/\w+.\w+\?)?(\w+=\w+&?)*/'

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值