【发布时间】:2017-03-08 04:59:13
【问题描述】:
我有一个带有行的 csv 文件,每行以 (@) 开头,一行中的所有字段都用 (;) 分隔。其中一个包含“文本”(“”[]“”)的字段有一些换行符,在将整个 csv 文件导入到 Excel 或访问时会产生错误。换行后的文本被认为是独立的行,不遵循表格的结构。
@4627289301; Lima, Peru; 490; 835551022915420161; Sat Feb 25 18:04:22 +0000 2017; ""[OJO!
la premiacin de los #Oscar, nuestros amigos de @cinencuentro revisan las categoras.
+info: co/plHcfSIfn8]""; 0
@624974422; None; 114; 835551038581137416; Sat Feb 25 18:04:26 +0000 2017; ""[Porque nunca dejamos de amar]""; 0
使用 python 脚本对此有何帮助?或任何其他解决方案...
作为输出,我想要这些行:
@4627289301; Lima, Peru; 490; 835551022915420161; Sat Feb 25 18:04:22 +0000 2017; ""[OJO! la premiacin de los #Oscar, nuestros amigos de @cinencuentro revisan las categoras. +info: co/plHcfSIfn8]""; 0
@624974422; None; 114; 835551038581137416; Sat Feb 25 18:04:26 +0000 2017; ""[Porque nunca dejamos de amar]""; 0
有什么帮助吗?我是一个 csv 文件(54MB),里面有很多带有换行符的行...其他一些行还可以...
【问题讨论】:
-
还有,评论里面的@是不用考虑的吧?
-
我想把所有的行都安排成例子的第二行 (@624914422...)
-
你有没有尝试过?似乎有相当简单的方法开始。逐行阅读并丢弃
@并按;拆分,否则使用csv模块。 -
重复的双引号看起来完全是错误的。 CSV 的某些方言允许在带引号的字符串中使用换行符,但它们应该在每一侧用一个双引号字符包裹,而不是两个。
标签: python regex csv line-breaks