正则表达式:php匹配网址

时间:2012-05-07 16:03:04

标签: php regex

  

可能重复:
  Converting ereg expressions to preg

http://www.google.co.in/aclk?sa= L&安培; AI = C_jFQq _

http://www.google.co.in/aclk?sa= L&安培; AI = CKKCUg

突出显示的部分在我的网址中很常见。

我的正则表达式

 if (preg_match('google.com/aclk\?sa\=L\&ai/i', $url))

这个正则表达式是否正确? 我想将我的正则表达式与我的网址相匹配。

2 个答案:

答案 0 :(得分:0)

你忘记了分隔符:

if (preg_match('#google.com/aclk\?sa\=L\&ai/i#', $url))
                ^--                          ^--

传统上他们是/,但是因为你正在处理一个URL,所以这是一个使用不同角色的情况,我在这种情况下选择了#

目前还不清楚最后一个/i是否是一个实际的分隔符和不区分大小写的标志,所以我把它作为模式的一部分留在原地。

答案 1 :(得分:0)

分隔符不能是字母数字或反斜杠,这是您的错误。