我有一个由几个段构建的字符串,它们没有分开,但没有重叠。看起来像这样:
<python><regex><split>
我想分成:
<python>, <regex>, <split>
我正在寻找最有效的方法,同时尽可能少地编写代码。我可以改变'&gt;'进入'&gt; '等等,但我不想做任何多余的操作。是否可以使用正则表达式来做到这一点?
答案 0 :(得分:7)
尝试re.findall:
import re
your_string = '<python><regex><split>'
parts = re.findall(r'<.+?>', your_string)
print parts # ['<python>', '<regex>', '<split>']
答案 1 :(得分:2)
>>> re.sub(r'<(.+?)>',r'<\1>,','<python><regex><split>')[:-1]
'<python>,<regex>,<split>'
答案 2 :(得分:1)
如果您的输入数据非常简单,您可以使用内置于字符串中的.replace()
方法。
>>> '<python><regex><split>'.replace('><', '>, <')
'<python>, <regex>, <split>'
如果它更复杂,你应该给出一个更好的输入/预期输出的例子。