参见英文答案 > Warning: preg_replace(): Unknown modifier ‘]’ 3个
好吧,所以我正在研究解析RSS提要.我得到了我不需要的数据,我剩下的就是解析游戏标题了.
这是我目前的代码(忽略了邋,,它只是一个概念证明):
<?php
$url = 'http://raptr.com/conexion/rss';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
curl_close($ch);
$xml = new SimpleXMLElement($result);
$lastgame = $xml->channel->item[0]->description;
preg_match('[a-zA-Z]+</a>.$', $lastgame, $match);
echo $match;
?>
一切都很好,但后来我开始收到这个错误:
Warning: preg_match() [function.preg-match]:
Unknown modifier '+' in raptr.php on line 14
我唯一剩下的就是去除关闭锚标签和句号,但我似乎无法弄清楚为什么它不喜欢”.有任何想法吗?
编辑:这不应该被标记为重复,因为在另一个问题之前两年被问到.
解决方法:
您需要在PHP中使用带有正则表达式的分隔符.您可以使用常用的/,但PHP允许您使用任何匹配的字符,因此@和#很受欢迎.
如果要在正则表达式中插入变量,请确保将您选择的分隔符作为第二个参数传递给preg_quote()
.