我正在尝试使用 re.split() 以便我可以用 python 编写 madlibs 程序。
我一直在尝试将每组括号分开,例如{名词}。到目前为止,我只能成功分割第一个括号,但不能成功分割第二个。我正在尝试阅读有关它的文档,但我仍然很困惑。我看过在多个项目上使用 re.split() 的其他示例,但它所做的只是让我感到困惑。有人可以向我深入解释如何解决这个问题吗?非常感谢。
前代码:
re.split('{') <--- 有效 re.split('{', '}') <-- 不起作用
最佳答案
正如评论中所述,您需要使用逻辑或运算符 |
来分隔符号。这样正则表达式引擎就会根据 {
或 }
符号分割输入字符串。并且不要忘记将正则表达式定义为原始字符串。
re.split(r'{|}', str)
或
将它们放入字符类中。
re.split(r'[{}]', str)
示例:
>>> re.split(r'{|}', "{noun}")
['', 'noun', '']
>>> re.split(r'[{}]', "{noun}")
['', 'noun', '']
关于python - 在 python 中对两个 { } 使用 re.split(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26206024/