使用preg_match pinterest用户名网址时遇到问题

时间:2013-11-15 23:01:23

标签: php regex preg-match

请帮助我用于匹配pinterest用户名网址的声明

$ url = http://pinterest.com/username

preg_match(“| ^ http(s)?:// pinterest.com/(。*)?$ | i”,$ url);

但是preg_match结果返回0

3 个答案:

答案 0 :(得分:0)

您缺少preg_match函数的第三个参数。

$url = "http://pinterest.com/username";

preg_match("|^http(s)?://pinterest.com/(.*)?$|i", $url, $match);

print_r($match);

结果

Array
(
    [0] => http://pinterest.com/username
    [1] => 
    [2] => username
)

或者在if语句中:

$ url =“http://pinterest.com/username”;

if(preg_match(“| ^ http(s)?:// pinterest.com/(。*)?$ | i”,$ url,$ match)){        //真的    }

答案 1 :(得分:0)

<?php
$url = "http://pinterest.com/username";
if(preg_match("|^http(s)?://pinterest.com/(.*)?$|i", $url)){
    echo "true";
}
else{
echo "false";
}

?>

<强>输出:

你还想要什么?

答案 2 :(得分:0)

没有人说需要逃脱点。 因此,更正确的代码将如下所示:

$url = "https://pinterest.com/username";

preg_match("|(?:https?://)(?:www\.)?pinterest\.com/(.+)/?|i", $url, $match);

它将返回用户名。我不知道对用户名使用pinterest的规则,所以我只匹配斜杠内的所有内容。

它将与以下链接一起使用:

  1. https://pinterest.com/username/
  2. https://www.pinterest.com/username
  3. pinterest.com/username
  4. 和其他

请勿使用此正则表达式进行验证