我希望拆分字符串和存储令牌以及列表中的分隔符。我的意思是,我有这样的字符串:
s = "hi,my+dear-friend*1"
我想得到:
["hi", ",", "my", "+", "dear", "-", "friend", "*", "1"]
答案 0 :(得分:3)
您可以使用正则表达式执行此操作:
import re
s = "hi,my+dear-friend*1"
re.findall(r"\w+|\W",s)
输出:
['hi', ',', 'my', '+', 'dear', '-', 'friend', '*', '1']
答案 1 :(得分:3)
您需要将捕获组与正则表达式一起使用。
>>> import re
>>> s = "hi,my+dear-friend*1"
>>> re.split(r'(\W)', s)
['hi', ',', 'my', '+', 'dear', '-', 'friend', '*', '1']