【发布时间】:2012-12-22 01:12:28
【问题描述】:
我正在尝试使用方括号“[]”作为 CSV 文件中的行分隔符。我必须为这个项目使用这种精确的格式(输出需要与 LEDES98 法律发票格式完全匹配)。
我正在尝试这样做:
CSV.open('output.txt', 'w', col_sep: '|', row_sep: '[]') do |csv|
#Do Stuff
end
但 Ruby 不会接受 row_sep: '[]' 并抛出此错误:
lib/ruby/1.9.1/csv.rb:2309:in `initialize': empty char-class: /[]\z/ (RegexpError)
我尝试使用 /'s 转义字符,使用双引号等,但没有任何效果。这样做的方法是什么?
【问题讨论】:
-
我不认为你可以用 CSV 类来做到这一点。您可能需要进行两部分处理。首先,使用
col_sep而不是row_sep。然后用[ ... ]包裹每一行来重写每一行。 -
您可以添加数据样本吗?