在 ruby 中解析 csv 文件时如何忽略具有唯一字符串的行
我想忽略所有
TopLevel, Result,,,,,,,,
AddHost,10.1.3.1,,,,,,,,
和
Flush,,,,,,,,,
AddHost,10.1.3.4,,,,,,,,
来自
TopLevel, Result,,,,,,,,
AddHost,10.1.3.1,,,,,,,,
Add,10.1.3.1,43172
Add,10.1.3.1,44172
Add,10.1.3.1,4172
Add,10.1.3.1,432
Add,10.1.3.1,435472
Flush,,,,,,,,,
AddHost,10.1.3.4,,,,,,,,
i want to ignore ALL
TopLevel, Result,,,,,,,,
AddHost,10.1.3.1,,,,,,,,
and
Flush,,,,,,,,,
AddHost,10.1.3.4,,,,,,,,
from
TopLevel, Result,,,,,,,,
AddHost,10.1.3.1,,,,,,,,
Add,10.1.3.1,43172
Add,10.1.3.1,44172
Add,10.1.3.1,4172
Add,10.1.3.1,432
Add,10.1.3.1,435472
Flush,,,,,,,,,
AddHost,10.1.3.4,,,,,,,,
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
给定 CSV 文件的内容:
gsub 将删除有问题的行:
您可能需要比这更具体的正则表达式。例如,如果要删除 TopLevel 行后面的任何 AddHost 行,则第一个正则表达式将为:
当 gsub 咀嚼完文件后,将结果正常传递到 CSV 解析器。
Given the contents of the CSV file:
gsub will remove the offending lines:
You may want regular expressions less specific than that. For example, if you want to remove ANY AddHost line following a TopLevel line, then the first regexp would be:
When gsub is done munching on the file, pass the results to the CSV parser as normal.