Python - 删除括号和引号

时间:2021-03-12 23:08:48

标签: python-3.x regex

我一直在尝试从字符串中删除成对的括号(包括它们之间的文本)、不平衡的括号和引号。

到目前为止我所做的:

import re

sample_text = '""sads"add"sfsfdsfds()()(0sefdAAAsfs)dasdad(asd'
res = re.sub(r'\([^)]*\)', '', sample_text))

它仅与文本的 ()()(0sefdAAAsfs) 部分匹配。不平衡和引号留下了无与伦比的。可以做些什么来改进上述正则表达式?

1 个答案:

答案 0 :(得分:0)

这不是正则表达式真正适合的东西,因此不是适合这项工作的工具。话虽如此,您可以使用以下模式来查看是否存在开头括号、零个或多个非括号以及匹配的结束括号:

\([^)+]*\)

替换 "'[ 或其他类型的匹配组件。

但同样,这不适用于这样的事情:

(asdf))))))))

enter image description here

长话短说:这不是正则表达式能够解决的问题。尝试在此处进行测试:https://regex101.com/r/bdiK5W/2

相关问题