如何在Python中使用多个分隔符分割字符串?

Hen*_*nry 0 python split delimiter

例如,我可能想拆分"Hello>>>World!!!!2]]splitting"["Hello", "World","2","splitting"]。它不需要是^ that ^,但我想用多个(例如5个)定界符来分割字符串。谢谢。

编辑:我也想保留定界符,使其 ["Hello", ">>>", "World", "!!!!", "2", "]]", "splitting"]

这是我尝试过的:

>>> string = "Hello>>>World!!!!2]]splitting"
>>> import re
>>> re.split("(\W)>>>|!!!!|]]", string)
['Hello>>>World', None, '2', None, 'splitting']
Run Code Online (Sandbox Code Playgroud)

(我是Regex的新手)

Mar*_*ius 5

为此,re.split您可以执行以下操作:

re.split(r'(>+|!+|]+)', string)
Run Code Online (Sandbox Code Playgroud)

简要解释一下:

  • 拆分在不同的分隔符的一次或多次出现(>!])。
  • 为了在结果中包括定界符,您可以通过将模式放置在捕获组中来将其放在捕获组中。