preg_match("#[_=&///?\.a-zA-Z0-9-]+$#i", $softurl1) 这句php正则表达式是什么意思能详细解释下吗

("#[_=&///?\.a-zA-Z0-9-]+$#i这个语法规则我看不懂if(!preg_match("#(http:\/\/)?([\w-]+\.)+[\w-]+(... ("#[_=&///?\.a-zA-Z0-9-]+$#i
这个语法规则我看不懂
if(!preg_match("#(http:\/\/)?([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?#i",$softurl)){
ShowMsg("请使用标准的url格式", "-1");
exit();
}

顺便看看这句里的正则是什么意思,一个单元一个单元的解释下好吗
展开
 我来答
百度网友ebcd94805
2011-10-20 · TA获得超过667个赞
知道小有建树答主
回答量:552
采纳率:0%
帮助的人:480万
展开全部
#[_=&///?\.a-zA-Z0-9-]+$#i
意思是 一个字符串以_=&/?\.a-zA-Z0-9-这些字符中的一个或者多个结尾
#(http:\/\/)?([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?#i
第二个匹配URL格式
(http:\/\/)? 以http://开头或者没有(问号表示这个http://可以不存在)
([\w-]+\.)+后面跟上字母数字下划线短横线的一个或者多个加上一个点号 加号的意思是这个字符串可以重复多次, 也就是可以是abc.也可以是ad-bc.oe_tc.这样的形式
[\w-]+ 刚才的字符串后面跟上字母数字下划线短横线一个或者多个
(/[\w- ./?%&=]*)? 刚才的字符串后面再跟上一个/ 然后后面的字符是字母数字下划线短以及 ./?%&=这几个字符多次或者没有, 问号的意思是这一条的整个字符串也可以不存在
总之就是匹配URL啦

说明起来比较复杂。。。看看基础知识就好了。。。
追问
感谢啊
就是基础不行
这是dedecms下载模块中的正则匹配
看了半天没有明白什么意思
谢谢啊
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式