【发布时间】:2018-03-08 22:29:55
【问题描述】:
我想知道如何去除最后出现的() 及其给定字符串的内容。
以下代码将字符串中的所有 () 去掉。
bracketedString = '*AWL* (GREATER) MINDS LIMITED (CLOSED)'
nonBracketedString = re.sub("\s\(.*?\)", '', bracketedString)
print(nonBracketedString1)
我想要以下输出。
*AWL* (GREATER) MINDS LIMITED
【问题讨论】:
-
为什么要为此使用正则表达式?只需找到最后一个卷曲,如果找到,将其删除。
-
那些不是卷发。
-
值得注意的是,您刚刚举了一个最著名的例子,总是给出的“正则语言无法解析的东西”,并询问如何用正则表达式解析它们。当然,
re可以做的远不止是一种实际的正则语言,而且您的数据可能有些东西即使使用严格的正则表达式也可以做到这一点(例如,您的括号不能嵌套,或者只能嵌套到深度 3 或其他),但这仍然是一个好兆头,表明您可能在这里找到了错误的工具。
标签: python regex python-3.x