假设我们有Zaptoit:685158:zaptoit@hotmail.com
你怎么分裂所以它只剩下685158:zaptoit@hotmail.com
>>> s = 'Zaptoit:685158:zaptoit@hotmail.com'
>>> s.split( ':', 1 )[1]
'685158:zaptoit@hotmail.com'
另一种解决方案:
s = 'Zaptoit:685158:zaptoit@hotmail.com'
s.split(':', 1)[1]
另一种方法,不使用拆分:
s = 'Zaptoit:685158:zaptoit@hotmail.com'
s[s.find(':')+1:]
前任:
>>> s = 'Zaptoit:685158:zaptoit@hotmail.com'
>>> s[s.find(':')+1:]
'685158:zaptoit@hotmail.com'
从 Python 2.5 开始,有一个更直接的解决方案。如果找不到分隔符,它会很好地降级:
>>> s = 'Zaptoit:685158:zaptoit@hotmail.com'
>>> s.partition(':')
('Zaptoit', ':', '685158:zaptoit@hotmail.com')
>>> s.partition(':')[2]
'685158:zaptoit@hotmail.com'
>>> s.partition(';')
('Zaptoit:685158:zaptoit@hotmail.com', '', '')
以下拆分字符串,忽略第一个元素并重新加入其余元素:
":".join(x.split(":")[1:])
输出:
'685158:zaptoit@hotmail.com'
s = re.sub('^.*?:', '', s)
使用方法 str.split(),maxsplit 参数的值为 1。
mailID = 'Zaptoit:685158:zaptoit@hotmail.com'
mailID.split(':', 1)[1]
希望它有所帮助。