php 正则数据列表,PHP如何用正则匹配数据? 这几步你要了解

在做开发时,有时候需要在一段文字里找出需要的字符,这时就需要用到正则表达式了。下面一起来看下具体怎么使用正则查找数据。

操作方法

01

我们先定义一个字符串,如图,假设要从这段字符串里,匹配找出网站的名字“搜狗”

8015156abf12aca631ce51eb29a37576.png

02

然后定义一个正则表达式,解析下代码,正则要放在斜杠符号(/)里面,如果表达式里有用到斜杠(/)符号的,则需要用反斜杠来转义。

最后面的 “i” 标记是让正则表达式在匹配的时候不需要区分大小写。

8ea8cab1a304bb66928ae2656d70ba26.png

03

这里定义一个数组,并调用php的preg_match方法,方法的第一个参数是上面定义的正则表达式,第二个参数是要查找的字符串,第三个参数是定义的数组,当有匹配到数据时,数组第一项是匹配的原字符串,数组第二项就是要查找的数据

51fc2b884ec736270e156934d23f0b7e.png

04

最后用dump方法输出数组的内容,显示匹配结果。

所有的代码就是这几行。

36e5103e3481cb69ef5232116ccdfcba.png

05

运行这些代码后,我们看到结果如图,有匹配到数据,但得到的结果(数组第二项内容)把字符串后面的内容都匹配上了。

c7df28f63717e354626de1e2a80fd8e3.png

06

为什么会这样?

是因为我们的正式表达式,默认情况是贪婪匹配,就是匹配尽量多的内容。

如何修正?我们只要加多一个U标记就行了,代码如图,加上这个标记就会告诉正则表达式,执行非贪婪匹配。

00215f3f6506d421df2d18a503806cae.png

07

再运行下代码,看下结果。

如图,这次能正确匹配到网站名字了。

e8566cbad885236e2f39ed539b20dd20.png

好了,以上就是大致内容了,(END)

声明:该文观点仅代表作者本人,天晴资讯网系信息发布平台,仅提供信息存储空间服务。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值