1.split不支持同时使用多种字符做分隔符,如果想实现这样的效果,可以用re,例如:

>>> s = 'Hello!This?Is!What?I!Want'
>>> s
'Hello!This?Is!What?I!Want'
>>> re.split('[!?]',s)
['Hello', 'This', 'Is', 'What', 'I', 'Want']


i = "25 192.168.19.32 192.168.1.30 [2014.09.28 09:01:35]env -i X='() { (a)=>\' bash -c 'echo date'; cat echo"


>>> re.split(r'[ \[\]]',i)

['25', '192.168.19.32', '192.168.1.30', '', '2014.09.28', '09:01:35', 'env', '-i

', "X='()", '{', "(a)=>'", 'bash', '-c', "'echo", "date';", 'cat', 'echo']


>>> re.findall(r'[\w.:]+',i)

['25', '192.168.19.32', '192.168.1.30', '2014.09.28', '09:01:35', 'env', 'i', 'X

', 'a', 'bash', 'c', 'echo', 'date', 'cat', 'echo']


>>> re.findall(r'[^]^[\s]+',i)

['25', '192.168.19.32', '192.168.1.30', '2014.09.28', '09:01:35', 'env', '-i', "

X='()", '{', "(a)=>'", 'bash', '-c', "'