Python正则表达式,用于检测除某些域之外的所有URL

时间:2015-07-10 21:58:40

标签: python regex url

我有这个python正则表达式,可以检测所有网址:

r'(http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\(\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+)'

但我需要从检测中排除youtube和vimeo url。我该怎么办?

1 个答案:

答案 0 :(得分:3)

您可以使用negative look-ahead

(http[s]?://(?!youtube|vimeo)(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\(\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+)

请参阅演示https://regex101.com/r/jB7tN3/1