热线电话:13121318867

登录
2019-01-26 阅读量: 815
根据匹配 - Python获取String的子串

有如下字符串

srring1 = "1/1/0/A1,A2:admin-status=up,id=admin-up"

string2 = "1/1/0/A1,A2:id:admin-up,admin-status=up"

string2 = "1/1/0/A1,A2:id=admin-down:admin-status=up"

我的输出如下:

print(string1) = admin-up

print(string2) = admin-up

print(string3) = admin-down

在字符串中,我的关键字是“id”,通过使用这个子字符串,我们必须检索该子字符串的值“admin-up”。在“id”子串之后,它具有任何特殊字符,如“:或=”。我们必须在特殊字符后检索值。

解决办法:

可以使用以下模式和功能来获取 group

import re

string1 = "1/1/0/A1,A2:admin-status=up,id=admin-up"

string2 = "1/1/0/A1,A2:id:admin-up,admin-status=up"

string3 = "1/1/0/A1,A2:id=admin-down:admin-status=up"

regex = r'id[:=](\w+-\w+)'

string1_id = re.search(regex, string1).group(1)

string2_id = re.search(regex, string2).group(1)

string3_id = re.search(regex, string3).group(1)

还有一个解决方案,如果你不了解正则表达式,可以这样:

def getAdminStatus(s):

s = s[ s.find('id=') + 3 : ] # 'admin-up........'

index = s.find(',')

if (index > 0):

s = s[: index]

return s

0.0000
5
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子