2016-01-23 50 views
2

通常當我想在python使用正則表達式兩個字符串之間刪除的文字,我做的:的Python:使用正則表達式刪除文本「{}」

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

哪裏s是我的文字,我用上面刪除z1AA(包括z1和AA)之間的所有內容。但現在我在努力爲以下做同樣的:

我有以下字符串(由膠乳.txt文件):

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

我的目標是從\toprule取代一切到最後}在最後一行。 我嘗試了幾個正則表達式組合,如.*?\{}等,但沒有成功......我做錯了什麼?

+0

你爲什麼不嘗試使用解析器? – thefourtheye

回答

3

您可以使用:

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

RegEx Demo

re.DOTALL使得DOT匹配包括換行和貪婪.*任何字符確保去年}輸入相匹配。

+1

哦,甜蜜!謝謝。作品完美。在睡覺前學會了一些東西。 – Plug4

相關問題