1

我想在电视连续剧 url 上返回匹配项:

YES: http://www.rottentomatoes.com/tv/falling-skies/

但不是在电视剧集或电视剧季

NO: http://www.rottentomatoes.com/tv/falling-skies/s03
NO: http://www.rottentomatoes.com/tv/falling-skies/s12/e01

我目前有以下正则表达式:

match = re.match('(http(s)?://)?(www.)?rottentomatoes.com/tv/.+', url)

这符合上述所有三个。我将如何构建正则表达式以仅匹配第一个?

4

1 回答 1

3

使用否定字符类而不是.+

^http://www\.rottentomatoes\.com/tv/[^/]+/?$

[^/]+匹配任何不是斜杠的字符,一次或多次 - 这是从tv/下一个斜杠开始的所有内容(如果 a/不存在,则为字符串的结尾)。

正则表达式演示

于 2014-08-19T20:10:27.247 回答