如何从python中的文本中提取

时间:2016-11-02 19:33:08

标签: python regex text extract

假设我们的文本存储在哪个列中:

! Column1<NEWLINE>! Column2<NEWLINE>! Column3<NEWLINE>! Column4<NEWLINE>

示例文字:

 class="wikitable" style="float:right; text-align:center; margin:2em;"<NEWLINE>|+ Comparison of Union and Confederacy, 1860–1864<ref name="census74" /><NEWLINE>! id<NEWLINE>! Year<NEWLINE>! Union<NEWLINE>! Confederacy<NEWLINE>|-<NEWLINE>|rowspan="2"|'''Population'''<NEWLINE>|1860<NEWLINE>| 22,100,000 (71%)<NEWLINE>| 9,100,000 (29%)<NEWLINE>|-<NEWLINE>|1864<NEWLINE>| 28,800,000 (90%)

如何从python中的文本中提取所有列?

我试过

re.findall('NEWLINE>!\s*([^|]+)', text, re.MULTILINE)

https://regex101.com/r/PLKREz/8

2 个答案:

答案 0 :(得分:0)

你可以分开。

split_text = text.split("<NEWLINE>!")

如果你想跳过第一个!还有,你可以这样做: split_text = text[1:].split("<NEWLINE>!")

答案 1 :(得分:0)

re.findall('NEWLINE&gt;!\ s *([^&lt;] +)',text,re.MULTILINE) 也许你可以试试这个。代码与[^ |]到[^&lt;]略有不同,它可以提取四列。