gpt4 book ai didi

ruby 正则表达式删除额外\n

转载 作者:太空宇宙 更新时间:2023-11-03 18:28:09 25 4
gpt4 key购买 nike

我有一个格式错误的 .csv 文件,它是由一些额外的 \n 引起的。例如:

Name,Comment
"Peter","Good morning"
"Paul","How are you
"
"Mary","Fine"

第二行以不需要的额外 \n 结尾。

我怎样才能删除所有尾部 \n 后面没有跟双引号 "(假设整个文件已经读入字符串)?

最佳答案

不要将整个内容读入字符串,使用标准 CSV parser in 1.9阅读它。如果您在 pancakes.csv 中有它,那么:

require 'csv'
data = CSV.open('pancakes.csv').map { |r| r.map(&:strip) }
# or
data = CSV.open('pancakes.csv').map { |r| r.map(&:chomp) }

然后你将在 data 中拥有这个:

[
["Name", "Comment"],
["Peter", "Good morning"],
["Paul", "How are you"],
["Mary", "Fine"]
]

这样您就可以非常简单地获得所有干净且很好地解析的数据。如果您只需要为某些无法处理嵌入式换行符的其他程序清理 CSV,则可以使用 CSV 将其重新写回。

关于ruby 正则表达式删除额外\n,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7886051/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com