我正在尝试从文件中删除一行
I'm tyring to remove a line from a file
我的代码有问题吗?
line = File.readlines("file.txt").sample(1)[0]
puts line
def remove_lines(fname, line)
IO.write(fname, IO.read(fname).gsub(/^#{line}\n/, ''))
end
remove_lines("file.txt", "#{line}")
我尝试在 readlines 中的文件名后添加一个 "a".. 尝试了一个 "rb" 和一个 "r+"。我只是想让它从 file.txt
中读取一行,然后删除正在读取的同一行。请帮忙?
您可以使用 String#strip (line.strip
) 从 line
中去除前导和尾随空白字符(如果有的话)。此外,从 gsub
:
中删除 \n
def remove_lines(fname, line)
IO.write(fname, IO.read(fname).gsub(/^#{line.strip}/, ''))
end
这样就可以了,您的代码将按预期工作。
我的代码有问题吗?
line = File.readlines("file.txt").sample(1)[0]
puts line
def remove_lines(fname, line)
IO.write(fname, IO.read(fname).gsub(/^#{line}\n/, ''))
end
remove_lines("file.txt", "#{line}")
我尝试在 readlines 中的文件名后添加一个 "a".. 尝试了一个 "rb" 和一个 "r+"。我只是想让它从 file.txt
中读取一行,然后删除正在读取的同一行。请帮忙?
您可以使用 String#strip (line.strip
) 从 line
中去除前导和尾随空白字符(如果有的话)。此外,从 gsub
:
\n
def remove_lines(fname, line)
IO.write(fname, IO.read(fname).gsub(/^#{line.strip}/, ''))
end
这样就可以了,您的代码将按预期工作。