此问题已被多次询问,但我没有找到适合我需求的工作解决方案。PHP正则表达式匹配字符串,但排除某个单词
我创建了一个函数来检查在谷歌的Ajax API输出的URL: https://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=site%3Awww.bierdopje.com%2Fusers%2F+%22Gebruikersprofiel+van+%22+Stevo
我想从输出中排除的“轨迹”一词。因此,如果字符串包含该字词,则跳过整个字符串。
这是我创建至今的功能:我创建了一个示例,使
function getUrls($data)
{
$regex = '/https?\:\/\/www.bierdopje.com[^\" ]+/i';
preg_match_all($regex, $data, $matches);
return ($matches[0]);
}
$urls = getUrls($data);
$filteredurls = array_unique($urls);
清楚我的意思正是:
http://rubular.com/r/1U9YfxdQoU
在样本可以看到4从中选择的字符串我只需要上面的2个字符串。 我该如何做到这一点?
你为什么用正则表达式解析JSON会让你的生活变得糟糕透顶? –
你的代码很好。你面临什么问题? – Rikesh
@Rikesh,问题是它有4场比赛而不是2场比赛,我不知道我会如何“不匹配”过去的两场比赛。查看我的示例以了解我的意思。 – Tom