Skip to main content
 首页 » 编程设计

python之正则表达式匹配除 "/"之外的所有内容

2025年05月04日24shihaiming

如果这是一个非常简单的问题,请原谅我。自从我编写正则表达式以来已经有一段时间了。非常感谢您对刷锈的帮助。我在 python 中使用正则表达式

我正在尝试解析一些 URL。以下是我正在解析的 URLS 的典型格式:

https://www.anysite.com/word/123456789/description-of-the-page 
https://www.anysite.com/word/123456789/description-of-the-page/someword 
https://www.anysite.com/word/123456789/description-of-the-page/thisword 
https://www.anysite.com/word/123456789/description-of-the-page/anyword 

我想写一个只匹配第一个 URL 而不是最后三个的表达式。也就是说,我想要一个正则表达式,只有在数字字符串“123456789”后面的“/”后面没有“/”时才会匹配。

忽略主 URL,我尝试了一个否定的先行断言但没有成功:

/word\/.+?\/(?!\/).+/ 

这匹配所有四个示例。

我不能具体说明不以“/someword”、“/thisword”或“/anyword”结尾,因为我没有这些词的完整列表。

再次感谢您的浏览和想法!

请您参考如下方法:

你可以这样做:

^https?:\/\/[^\d]*(\d+)\/[^\/]*$

演示:http://regex101.com/r/aC8aJ7