为了账号安全,请及时绑定邮箱和手机立即绑定

一句正则不懂

一句正则不懂

人到中年有点甜 2019-04-09 20:23:54
preg_match_all("#(^|\s|\()((http(s?)://)|(www\.))(\w+[^\s\)\
查看完整描述

2 回答

?
偶然的你

TA贡献1841条经验 获得超3个赞

我把每一部分都解释给题主吧。
#(^|\s|\()((http(s?)://)|(www\.))(\w+[^\s\)\<]+)#i
两边的#是PCRE分隔符,最后一个i表示忽略大小写。
(^|\s|\()
字符串开头,或者有空格分隔,或者匹配一个左括号。这个部分是一个未命名分组。
((http(s?)://)|(www\.))
匹配http://或者https://或者www.。这个部分是一个未命名分组,其中又分成两个未命名分组。
(\w+[^\s\)\<]+)
匹配至少一个字母数字,之后再匹配至少一个不是空格、右括号、左尖括号的字符。这里又是一个未命名分组。
结束。
                            
查看完整回答
反对 回复 2019-04-09
?
繁星淼淼

TA贡献1775条经验 获得超11个赞

推荐两个debug正则的站点:
debuggex界面凑合,功能强大,支持多种语言的正则
regexper比较好看,只支持javascript的正则
                            
查看完整回答
反对 回复 2019-04-09
  • 2 回答
  • 0 关注
  • 384 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号