我正在尝试使用带有RegEx的RSS源删除带有社交链接的部分,如下所示:
preg_replace("/<p>.*?facebook.*?</p>/", "", $rss_string);
其中$ rss_string可以是例如。
<description>important_content<p>facebook_rubbish_here</p></description>
首先它是无效修饰符'p'。然后我将/ p更改为\ / p导致它运行,但它没有找到任何东西......我做错了什么?我没有逃避我应该做的事情吗?
谢谢!
答案 0 :(得分:3)
这是因为你正在使用正则表达式分隔符斜杠,你的正则表达式也包含斜杠。要么逃避正斜杠还是更好地使用替代的正则表达式分隔符。
preg_replace('~<p>.*?facebook.*?</p>~', "", $rss_string);
答案 1 :(得分:0)
正如我所说,然后我逃脱了/ p但它仍然没有用。我刚刚发现解决方案是在preg_replace中,DOT与换行符不匹配所以我需要使用&#39; s&#39;选项。