Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/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
Python 漂亮的汤/正则表达式多行匹配_Python_Regex_Beautifulsoup - Fatal编程技术网

Python 漂亮的汤/正则表达式多行匹配

Python 漂亮的汤/正则表达式多行匹配,python,regex,beautifulsoup,Python,Regex,Beautifulsoup,我基本上有一个用Python编写的RSS索引应用程序,它将RSS内容作为一个blurb存储在DB中。当应用程序最初处理文章内容时,它会注释掉所有不符合特定条件的链接,例如: <a href="http://google.com">Google</a> 或 谷歌 显然,replace(旧的,新的)不起作用,因为replace()不包括多行 有人能帮我用正则表达式多行查找/替换吗?它应该区分大小写。请尝试以下操作: re.sub(r'pattern', '', lin

我基本上有一个用Python编写的RSS索引应用程序,它将RSS内容作为一个blurb存储在DB中。当应用程序最初处理文章内容时,它会注释掉所有不符合特定条件的链接,例如:

<a href="http://google.com">Google</a>


谷歌
显然,
replace(旧的,新的)
不起作用,因为
replace()
不包括多行

有人能帮我用正则表达式多行查找/替换吗?它应该区分大小写。

请尝试以下操作:

 re.sub(r'pattern', '', link, flags=re.MULTILINE)
根据默认值,正则表达式匹配区分大小写

如果由于某种原因RSS文件变得不规则,脚本将失败。在这种情况下,您应该考虑使用适当的解析器,例如。 试试这个:

 re.sub(r'pattern', '', link, flags=re.MULTILINE)
根据默认值,正则表达式匹配区分大小写

如果由于某种原因RSS文件变得不规则,脚本将失败。在这种情况下,您应该考虑使用适当的解析器,例如。 如果您不想麻烦(并且可以在不改变页面内容的情况下完成),最明显的处理方法是将所有HTML放在一行上,这样就很容易执行替换。看看,如果您不想麻烦(并且可以在不改变页面内容的情况下完成),处理这个问题最明显的方法是将所有HTML放在一行,这样就可以很容易地执行替换
<!--<a href="http://google.com">Google</a>--> Google
<!--<a href="http://google.com">Google
</a>--> Google
<!--<a href="http://google.com">Google</a>--> 
Google
 re.sub(r'pattern', '', link, flags=re.MULTILINE)