我使用Ruby脚本来处理一些文本文件。基本上,读取每一行,有时进行一些操作,然后将该行写入输出文本文件。
除非原始行中有新行\n
字符,否则此方法效果很好。在这种情况下,脚本将“执行”新行而不是按字面复制它。
修改
# output code:
modified_line # => "hello\nworld"
output.write(modified_line) # will output
hello
world
# output I am looking for:
hello\nworld
如何让Ruby只是逐字写入字符串变量,忽略任何包含的特殊字符?
答案 0 :(得分:0)
假设你做了一些file.write(string_variable)
。
使用会想要使用String#dump来逃避所有特殊字符。就像在文档中说的那样:
生成一个str版本,替换为所有非打印字符 \ nnn表示法和所有特殊字符都逃脱了。
所以你的代码看起来像
file.write(string_variable.dump)