如何从python中的字符串(可能是url)获取整数值

时间:2012-07-16 10:57:53

标签: python string url

假设我有一个网址如下

url = 'https://www.advertise-example.com/ads/2022/presents'

现在我试图从上面的url中获取整数值2022。我们可以在这里使用列表切片,但是整数值可以增加,所以我使用正则表达式但是无法得到确切的结果,任何人都可以告诉我如何做到这一点

提前致谢........

3 个答案:

答案 0 :(得分:3)

>>> import re
>>> url = 'https://www.advertise-example.com/ads/2022/presents'
>>> int(re.search(r'\d+', url).group())
2022

答案 1 :(得分:0)

from urlparse import urlsplit
import re

url = 'https://www.advertise-example.com/ads/2022/presents'
spliturl = urlsplit(url)
int(re.search(r'\d+', spliturl.path).group())

如果您期望或想要处理更多>,可能会查看re.findall网址中有1位数字

或者,不使用re:

digits = [int(el) for el in spliturl.path.split('/') if el.isdigit()]

答案 2 :(得分:0)

这是一个不使用正则表达式的解决方案

>>> import itertools
>>> url = 'https://www.advertise-example.com/ads/2022/presents'
>>> int(next(''.join(g) for k, g in itertools.groupby(url, str.isdigit) if k))
2022