我正在使用python正则表达式包re尝试匹配python 2.7中的以下字符串,但在编写正则表达式代码时遇到了问题:
https://www.this.com/john-smith/e5609239
https://www.this.com/jane-johnson/e426609216
https://www.this.com/wendy-saad/e172645609215
https://www.this.com/nick-madison/e7265609214
https://www.this.com/tom-taylor/e17265709211
https://www.this.com/james-bates/e9212
因此前缀是固定的“https://www.this.com/”,然后是可变数量的小写字母,然后是“-”,然后是“e”,然后是可变数量的数字。你知道吗
以下是我尝试过却无济于事的:
href=re.compile("https://www.this.com/people-search/[a-z]+[\-](?P<firstNumBlock>\d+)/")
href=re.compile("https://www.this.com/people-search/[a-z][\-][a-z]+/e[0-9]+")
谢谢你的帮助!你知道吗
[a-z-]+
匹配john-smith
e\d+
匹配e5609239
Try out here.
您遇到了转义特殊字符的问题。因为您没有使用原始字符串,所以反斜杠在字符串文本本身中有特殊的含义。此外,字符类(带有
[]
)不需要在正则表达式中转义。您可以将表达式简化如下:具有以下数据:
结果:
相关问题 更多 >
编程相关推荐