Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php preg_match();-未知修饰符'+';_Php_Xml_Parsing_Rss - Fatal编程技术网

Php preg_match();-未知修饰符'+';

Php preg_match();-未知修饰符'+';,php,xml,parsing,rss,Php,Xml,Parsing,Rss,好的,我现在正在解析RSS提要。我已经得到了我需要的数据,没有问题,我所剩下的就是解析游戏标题 以下是我目前拥有的代码(忽略粗枝大叶,这只是一个概念证明): 我唯一剩下的就是去掉结束锚标记和句点,但我似乎不明白为什么它不喜欢“+”。有什么想法吗 编辑:不应将其标记为重复项,因为它是在另一个问题提出两年前提出的。您需要在PHP中对正则表达式使用分隔符。您可以使用常用的/,但PHP允许您使用任何匹配字符,因此@和#非常流行 如果要在正则表达式中插入变量,请确保将选择作为第二个参数的分隔符传递给。请

好的,我现在正在解析RSS提要。我已经得到了我需要的数据,没有问题,我所剩下的就是解析游戏标题

以下是我目前拥有的代码(忽略粗枝大叶,这只是一个概念证明):

我唯一剩下的就是去掉结束锚标记和句点,但我似乎不明白为什么它不喜欢“+”。有什么想法吗


编辑:不应将其标记为重复项,因为它是在另一个问题提出两年前提出的。

您需要在PHP中对正则表达式使用分隔符。您可以使用常用的
/
,但PHP允许您使用任何匹配字符,因此
@
#
非常流行

如果要在正则表达式中插入变量,请确保将选择作为第二个参数的分隔符传递给。请尝试以下代码:

preg_match('/[a-zA-Z]+<\/a>.$/', $lastgame, $match);
print_r($match);

可能不是最好的方法…

可能是这样的,这将对您有用:

这发生在我身上,因为我在正则表达式中放入了一个变量,有时它的字符串值包含一个斜杠。解决方案:.

打印($match);返回“Array()”我很确定我的表达式是正确的。我不知道你的评论想说什么…@Conexion,检查了你的其他评论,你想从rss提要中提取什么内容到你的匹配中?游戏?是的,只是想拉一下最近的游戏:)它是有效的,但问题是,feed并不总是与“玩了一些”。对不起,我太难了!检查rss源时,您不想在那里使用
$
。当我删除$it时,它只匹配“Conexion”,我感谢您的帮助!你打算配什么?所有链接都有可能吗?然后尝试
preg\u match\u all
。否则请尝试RSS解析器。我只想玩最新的游戏。它始终是第二个链接中的文本。我希望他们能更好地组织提要。使用preg_match_all并获得第二个条目。感谢您让我了解preg_quote-非常有用的功能!嗯,那真是个惊喜
string preg_quote(string$str[,string$delimiter=NULL])
->函数签名默认不强制任何内容,因此在最意想不到的时候踢了我一脚。默认值应为
/
Warning: preg_match() [function.preg-match]: 
Unknown modifier '+' in raptr.php on line 14
preg_match('/[a-zA-Z]+<\/a>.$/', $lastgame, $match);
print_r($match);
preg_match('/<a.*<a.*>(.*)</', $lastgame, $match);
echo'['.$match[1].']';