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

3-2的教学中,出现了问题?

   $str = "Http://www.imooc.com/"

if(preg_match('/http/i' , $str)) {

echo '匹配成功';

}

请问第一句中 为什么Http前面没有分隔符?

请问第二句中为什么会出现'/ xxxx /i' 呢?

求大神解答    啦

正在回答

4 回答

preg_match()是匹配函数,他有两个参数,第一个参数是匹配模式  即 '/ xxx/i' 意思是在$str中去匹配 http 并忽略大小写!

1 回复 有任何疑惑可以回复我~
#1

z一刻 提问者

谢谢你啦
2017-12-21 回复 有任何疑惑可以回复我~
#2

杜朝辉 回复 z一刻 提问者

共同学习!
2017-12-21 回复 有任何疑惑可以回复我~

preg_match()这个函数的第二个参数默认就是源字符串,所以源字符串不会有分隔符

1 回复 有任何疑惑可以回复我~

$str是源字符串,不用分隔符啊;第二行 /http/i 是正则表达式啊,i忽略大小写,这样$str的Http就匹配到了

0 回复 有任何疑惑可以回复我~
#1

z一刻 提问者

请问是不是php中规定$str为源字符串呢?对于这个我还是不懂。
2017-12-24 回复 有任何疑惑可以回复我~

i 表示忽略大小写

0 回复 有任何疑惑可以回复我~
#1

z一刻 提问者

对啊,这个我只要,可是为什么会在第二行出现'/ xxx/i'呢?
2017-12-21 回复 有任何疑惑可以回复我~
#2

lucasj 回复 z一刻 提问者

/http/是正则表达式,后面加i,是忽略大小写,所以和$str中的“Http”就能匹配上了
2024-06-05 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

3-2的教学中,出现了问题?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信