ruby-on-rails - 如何在 Ruby 中删除 \r\n?
问题描述
错误:nil:NilClass 的未定义方法“删除”
"updated_at" => "",
"fias_ao_guid" => "\r\n",
"file_path" => nil
如何删除“\r\n”?
splitted_records = []
id = 3141634
string = 0
row = 0
h = {}
record_candidate = {}
open('/home/dayanov-sa/PGadmin/finish.csv') do |csv|
csv.each_line do |line|
index = 0
row += 1
line.split(";").each do |key_filed|
record_candidate["#{key_filed.delete("\r\n")}"] = nil
end if row.eql?(1)
next if row.eql?(1)
copy_object = Marshal.load(Marshal.dump(line))
values = line.split(";")
record_candidate.keys.each do |keys|
index += 1
record_candidate[keys] = values[index].delete("\r\n")
end
id = id + 1
puts string
splitted_records << record_candidate
我正在尝试从哈希中删除 \r\n
解决方案
这是因为某些哈希键具有nil
值,例如 ("file_path" => nil
)
您需要绕过这些nil
值
您的代码将如下所示:
record_candidate.keys.each do |keys|
index += 1
if !values[index].nil?
record_candidate[keys] = values[index].delete("\r\n")
end
end
推荐阅读
- r - 如何用ggplot2缩放第二个轴,第二个轴有负值
- ios - 在 Swift 4 中使用拖放 API 使拖动项消失
- ios - iOS Flutter 应用程序无法启动;'致命错误:'camera/CameraPlugin.h' 文件未找到'?
- r - 使用 R 闪亮中的对数刻度减少绘图散点图中的网格线数量
- matlab - 使用 Matlab Coder 对字符串元胞数组进行字符串比较
- reactjs - 剪辑路径动态转换以填充容器
- python - axios响应是一个字符串,里面有回车,应该是一个数组
- aws-device-farm - 为什么 Appium python find_element_by_id 在 AWS 设备场中失败但在本地工作?
- github - 创建 github 站点/自定义页面/多个项目
- python - one_shot_iterator,占位符,无法捕获占位符