Python 如何用空格和标点分隔字符串,但保留标点?

Python 如何用空格和标点分隔字符串,但保留标点?,python,string,Python,String,如果我想在Python中使用re.split来实现这一目标,该如何实现? e、 g:唐纳德·特朗普!唐纳德?特朗普--> ['donald'、'trump'、'!'、'donald'、'?'、'trump']如果您试图在python中按空格拆分字符串,请尝试使用python的字符串拆分() 输出: ['donald ', 'trump!', 'donald? ', 'trump'] 如果您试图在python中按空格分割字符串,请尝试使用python的string split() 输出: ['d

如果我想在Python中使用re.split来实现这一目标,该如何实现? e、 g:唐纳德·特朗普!唐纳德?特朗普-->

['donald'、'trump'、'!'、'donald'、'?'、'trump']
如果您试图在python中按空格拆分字符串,请尝试使用python的字符串拆分()

输出:

['donald ', 'trump!', 'donald? ', 'trump']

如果您试图在python中按空格分割字符串,请尝试使用python的string split()

输出:

['donald ', 'trump!', 'donald? ', 'trump']

您可以定义与单词
(\w+)
或 问号(
)或感叹号(


您可以定义与单词
(\w+)
或 问号(
)或感叹号(


此输出与问题中描述的输出不匹配此输出与问题中描述的输出不匹配或
\w+|[,.!?;:]
,必要时包含更多标点符号thx!这就是我需要的!或者
\w+|[,.!?;:]
,必要时添加更多标点符号thx!这就是我需要的!
>>> s="donald trump! donald? trump"
>>> re.findall(r'\w+|\?|\!',s)
['donald', 'trump', '!', 'donald', '?', 'trump']