当前位置: 首页 > 知识库问答 >
问题:

Python:使用正则表达式删除带有“{ }”的文本

郦何平
2023-03-14

通常,当我想在python中使用正则表达式删除两个字符串之间的文本时,我会这样做:

s = re.sub('z1.*?AA', '', s, flags=re.DOTALL)

其中 s 是我的文本,我使用上面的代码删除 z1 和 AA 之间的所有内容(包括 z1AA)。但是现在我正在努力为以下方面做同样的事情:

我有下面的字符串(来自乳胶。txt文件):

\begin{tabular}{lccccc}
\toprule
            &            &            &            &            &             \\
            &    (0)     &    (1)     &    (2)     &    (3)     &    (4)      \\
\hline
\hline
\end{tabular}
\begin{tabular}{llllll}

我的目标是替换所有的东西,从\Top规则到最后一行的最后一个}。我尝试了几个正则表达式组合,如. *? \{}和其他组合,但没有成功…我做错了什么?

共有1个答案

邹正阳
2023-03-14

您可以使用:

s = re.sub(r'\\toprule.*}', '', s, flags=re.DOTALL)

正则表达式演示

再。DOTALL 使 DOT 匹配任何字符,包括换行符和贪婪 .* 确保匹配输入中的最后一个 }

 类似资料:
  • 问题内容: 我将如何编写一个正则表达式来删除所有以#开头并在该行结束处停止的注释-但同时要排除前两行,即 和 问题答案: 您可以通过使用解析Python代码来删除注释。以下是从docs对该示例进行的稍微修改的版本: 例如: 如果script.py包含 然后的输出是

  • 问题内容: 我需要使用正则表达式在单词的 开头 和 结尾 处删除标点符号。似乎正则表达式将是最好的选择。我不想从“ you’re”之类的词中删除标点符号,这就是为什么我不使用.replace()的原因。 问题答案: 您不需要正则表达式即可执行此任务。使用有:

  • 问题内容: 我正在尝试处理一堆文件,然后需要进行修改以删除文件名中的无关信息;值得注意的是,我正在尝试删除括号内的文本。例如: 我想对一整堆文件进行正则表达式,其中括号表达式可能在中间或结尾,并且长度可变。 正则表达式是什么样的?首选Perl或Python语法。 问题答案: 因此,在Python中,您可以这样做:

  • 问题内容: 我正在使用Django的URLconf,我将收到的URL是 我想使用来匹配该URL ,但它不起作用。 然后我发现这是“?”的问题。 因为我尝试使用even 进行匹配,但都失败了,但是当它是“ +”或任何其他字符时,它可以工作。 如何匹配“?”,有什么特别之处吗? 问题答案: 你的网址内部不匹配的原因是因为?开始新的GET查询。 因此,URL的可匹配部分只能达到第一个“ aaa”。其余的

  • 问题内容: 我得到了一个包含多行纯utf-8文本的文件。如下所示,按中文,是中文。 文件本身以utf-8格式保存。文件名是xx.txt 这是我的python代码,env是python2.7 这里有问题的是我没有结果。 我想从这里的十进制字符串中获得。 为什么此代码不起作用?谁能向我解释,我什么也没有。 问题答案: 您的代码有几个问题。首先,您应该使用。另外,添加re.UNICODE标志也很不错(尽

  • 问题内容: 假设我想使用正则表达式删除字符串中的所有重复字符(特定字符)。这很简单- 如果我想用相应的字符替换所有重复的字符(即a,z)怎么办?我该怎么做呢? 注意: 我知道可以使用哈希表或某些O(n ^ 2)算法更好地解决这种删除重复项的方法,但是我想使用正则表达式进行探索 问题答案: 的周围的指定 捕获组 ,然后将(一个 反向引用 在图案和替换两者)指的是第一个捕获组的内容。 因此,正则表达式