0

我刚刚注意到 gsub 方法的行为非常奇怪,也许有人可以向我解释一下。我有我用标准打开的文件

f=File.read(filename)
puts f.gsub('xxxxx','a')

这工作正常,所有 xxxxxx 字符串都替换为

如果我打开最初以 iso-8859-1 编码的相同文件

f=File.read(filename,:encoding => 'iso-8859-1')
puts f.gsub('xxxxx','a')

这不起作用...没有错误,只是忽略并且 xxxxx 没有被替换,但只有 1 个字符它工作得很好

f=File.read(filename,:encoding => 'iso-8859-1')
puts f.gsub('x','a')

有什么原因吗?

编辑:我正在添加示例文件作为 gdrive 的链接...它是从 sql server file_in_zip的默认导出

4

0 回答 0