我需要在此示例1234567中的最后一个冒号之后获取值
client:user:username:type:1234567
我不需要字符串中的任何其他内容只是最后一个id值。
答案 0 :(得分:55)
result = mystring.rpartition(':')[2]
如果您的字符串没有:
,则结果将包含原始字符串。
一个应该慢一点的替代方案是:
result = mystring.split(':')[-1]
答案 1 :(得分:25)
foo = "client:user:username:type:1234567"
last = foo.split(':')[-1]
答案 2 :(得分:14)
使用此:
"client:user:username:type:1234567".split(":")[-1]
答案 3 :(得分:0)
您也可以使用pygrok。
from pygrok import Grok
text = "client:user:username:type:1234567"
pattern = """%{BASE10NUM:type}"""
grok = Grok(pattern)
print(grok.match(text))
返回
{'type': '1234567'}