【发布时间】:2013-08-31 22:31:32
【问题描述】:
我有一个包含多个条目的文件。每个条目的格式如下:
"field1","field2","field3","field4","field5"
所有字段都保证不包含任何引号,但它们可以包含,。问题是field4 可以分成多行。因此示例文件可能如下所示:
"john","male US","done","Some sample text
across multiple lines. There
can be many lines of this","foo bar baz"
"jane","female UK","done","fields can have , in them","abc xyz"
我想使用 Python 提取字段。如果该字段不会被拆分为多行,这将很简单:Extract string from between quotations。但是在存在多行字段的情况下,我似乎找不到一种简单的方法来做到这一点。
编辑:实际上有五个字段。抱歉,如果有任何混淆。该问题已被编辑以反映这一点。
【问题讨论】:
-
链接问题的答案应该可以正常工作。你试过了吗?
-
是的。我像
for line in file: regex.findall(...)一样使用它。问题发生是因为它是一行一行的。 -
将所有
"\n"替换为""还是需要保留它们? -
但这会将所有字段融合在一起。
-
文件大吗?你能把它全部读入记忆吗?