使用特定字符在Python中拆分字符串

use*_*868 3 python split

我正在尝试将输入的文档拆分为特定字符.我需要将它们拆分为[和],但我很难搞清楚这一点.

def main():
for x in docread:
    words = x.split('[]')
    for word in words:
        doclist.append(word)
Run Code Online (Sandbox Code Playgroud)

这是将它们分成我的列表的代码的一部分.但是,它返回文档的每一行.

例如,我想转换

['I need to [go out] to lunch', 'and eat [some food].']
Run Code Online (Sandbox Code Playgroud)

['I need to', 'go out', 'to lunch and eat', 'some food', '.']
Run Code Online (Sandbox Code Playgroud)

谢谢!

Gre*_*ill 7

您可以尝试使用re.split():

>>> import re
>>> re.split(r"[\[\]]", "I need to [go out] to lunch")
['I need to ', 'go out', ' to lunch']
Run Code Online (Sandbox Code Playgroud)

奇数找正则表达式[\[\]]是一个字符类,它是指在分割任一 [].内部\[并且\]必须反斜杠转义,因为它们使用[]围绕字符类相同的字符.