使用python在字符串中查找子字符串

时间:2016-05-06 13:12:16

标签: python

我有数据

vk.com/idefiks
vk.com/id211452033
vk.com/id211452033
vk.com/id165402000
vk.com/id_lizalizaelizaveta

我需要获取所有网址,id之后的数字在哪里。 如果我使用

if '/id' in url:

它返回所有字符串。 如何只返回带有号码的id

4 个答案:

答案 0 :(得分:3)

您可以使用re模块。例如:

import re
s = """
vk.com/idefiks
vk.com/id211452033
vk.com/id211452033
vk.com/id165402000
vk.com/id_lizalizaelizaveta
"""
p = re.compile('/id\d+')
print p.findall(s)

输出将是:

['/id211452033', '/id211452033', '/id165402000']

PS:如果要删除结果中的/,只需将正则表达式更新为/(id\d+)即可。这是因为,findall只返回捕获的组

答案 1 :(得分:0)

最简单的解决方案:

x = "vk.com/idefiks"
x[6:]

这将给出:/idefiks

如果您想省略/使用x[7:]

您也可以使用re进行此操作,但这种情况不需要这样做。

答案 2 :(得分:0)

if '/id' in url:
    result = url.split('/id')[-1]

答案 3 :(得分:-3)

for item in data:
    listItem = item.split('/')
    strId = listItem[1]

试试这个