13

假设我们有Zaptoit:685158:zaptoit@hotmail.com

你怎么分裂所以它只剩下685158:zaptoit@hotmail.com

4

7 回答 7

13
>>> s = 'Zaptoit:685158:zaptoit@hotmail.com'
>>> s.split( ':', 1 )[1]
'685158:zaptoit@hotmail.com'
于 2009-01-12T19:15:09.770 回答
5

另一种解决方案:

s = 'Zaptoit:685158:zaptoit@hotmail.com'
s.split(':', 1)[1]
于 2009-01-12T19:15:09.380 回答
5

另一种方法,不使用拆分:

s = 'Zaptoit:685158:zaptoit@hotmail.com'
s[s.find(':')+1:]

前任:

>>> s = 'Zaptoit:685158:zaptoit@hotmail.com'
>>> s[s.find(':')+1:]
'685158:zaptoit@hotmail.com'
于 2009-01-12T19:59:47.277 回答
3

从 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', '', '')
于 2012-01-09T18:07:31.543 回答
1

以下拆分字符串,忽略第一个元素并重新加入其余元素:

":".join(x.split(":")[1:])

输出:

'685158:zaptoit@hotmail.com'
于 2017-12-14T15:58:26.447 回答
0
s = re.sub('^.*?:', '', s)
于 2009-01-12T19:58:45.407 回答
0

使用方法 str.split(),maxsplit 参数的值为 1。

mailID = 'Zaptoit:685158:zaptoit@hotmail.com' 
mailID.split(':', 1)[1]

希望它有所帮助。

于 2012-01-10T12:41:59.460 回答