私たちが持っているとしましょう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', '', '')
maxsplit引数の値を1として、メソッドstr.split()を使用します。
mailID = 'Zaptoit:685158:zaptoit@hotmail.com'
mailID.split(':', 1)[1]
お役に立てば幸いです。
s = re.sub('^.*?:', '', s)