我有一个由几个段组成的字符串,这些段没有分开,但没有重叠。这看起来像这样:
<python><regex><split>
我想分成:
<python>, <regex>, <split>
我正在寻找最有效的方法来做到这一点,同时尽可能少的代码。我可以将 '>' 更改为 '>' 等,但我不想做任何多余的操作。是否可以使用正则表达式来做到这一点?
尝试re.findall:
import re
your_string = '<python><regex><split>'
parts = re.findall(r'<.+?>', your_string)
print parts # ['<python>', '<regex>', '<split>']
>>> re.sub(r'<(.+?)>',r'<\1>,','<python><regex><split>')[:-1]
'<python>,<regex>,<split>'
如果您的输入数据真的那么简单,您可以使用.replace()
内置在字符串中的方法。
>>> '<python><regex><split>'.replace('><', '>, <')
'<python>, <regex>, <split>'
如果它更复杂,您应该给出一个更好的输入/预期输出示例。