读取文本:
9.78043902348e+12,Suzanne Collins,2008.0,The Hunger Games,"The Hunger Games (The Hunger Games, #1)",eng,4.34,4780653
分隔符是逗号,但是列中如 "The Hunger Games (The Hunger Games, #1)" 包含了逗号,这要如何处理? 使用正则可以吗?
1
kyuuseiryuu 2019-04-28 17:11:53 +08:00
写 parser,引号方括号圆括号之类的结对出现的字符优先匹配,没有匹配上的话之后逗号都视为普通字符不匹配。
|
2
my3157 2019-04-28 17:15:11 +08:00
如果不特别 care 性能, 建议正则
|
3
lululau 2019-04-28 17:30:42 +08:00
这不是 CSV 吗,人家已经把包含分隔符的字段引起来了啊
|
4
annielong 2019-04-28 17:34:37 +08:00
就如 csv 大文件导入时候文本包含引号的问题一样
|
5
gaolycn 2019-04-28 23:40:57 +08:00 via Android
请使用 csv parser,不用当作纯文本自己处理
|
6
autogen 2019-04-29 00:49:39 +08:00
我还见过这样的代码。。。。
if cols.length == 9: fullname = cols[4] +',' + cols[5] cols.pop(5) else: fullname = cols[4] - |