【发布时间】:2016-09-12 15:20:21
【问题描述】:
我有一个以冒号分隔的文件cik.coleft.c,如下所示:
!J INC:0001438823:
#1 A LIFESAFER HOLDINGS, INC.:0001509607:
#1 ARIZONA DISCOUNT PROPERTIES LLC:0001457512:
#1 PAINTBALL CORP:0001433777:
$ LLC:0001427189:
& S MEDIA GROUP LLC:0001447162:
&TV COMMUNICATIONS INC.:0001479357:
'MKTG, INC.':0000886475:
11:11 CAPITAL CORP.:0001463262:
这是一个两列csv,其中分隔逗号被冒号替换。同时,单引号用逗号转义值,而不是用冒号(分隔符)转义值。
但是第一列包含冒号,这会破坏解析器。所以当我尝试将cik.coleft.c 转换为普通的csv...
curl -o cik.coleft.c 'https://www.sec.gov/edgar/NYU/cik.coleft.c'
in2csv --format 'csv' -d ':' -q "'" -e 'latin1' cik.coleft.c > cik.coleft.csv
...我得到四列或更多列。
我尝试阅读带有sed 的行,但没有成功。
如何将其转换为合适的两列表?
【问题讨论】:
-
你能选择一个不会与
11:11之类的东西冲突的不同分隔符吗? -
那么,唯一不正确的冒号是最后一行的
11:11? -
您(或创建该文件的任何人)在没有重新分析每个字段的引用要求的情况下替换了分隔符,从而破坏了格式。天真地更改“X”分隔值文件中的分隔符会破坏信息,从而导致这种歧义。 (这对你没有帮助,我知道,但这是对未来的一个教训。如果其他人破坏了文件,你可以合法地投诉。)