gpt4 book ai didi

ruby - 清理来自 open(url).read 的内容

转载 作者:太空宇宙 更新时间:2023-11-03 18:29:17 26 4
gpt4 key购买 nike

我正在使用 Ruby 打开一个 URL 并阅读其内容。我正在阅读的文件的内容类型是“文本/纯文本”。

问题是它包含一些我想转义的字符。例如,纯文本中出现的字符之一是“\240”,这是一个连字符的 ASCII。

我很好奇这是如何生成的,因为我在文本中的任何地方都没有看到连字符。然而它无形地存在,当我使用 puts 在控制台中打印文本时,“\240”出现了。

其次,我该如何避开这些奇怪字符的实例?理想情况下,我想转义所有形式为“\[some number]”的字符。我正在使用

"\240".gsub(Regexp.new("\\\d+"),"")

但是好像不行。

是否有更传统的方法来净化从打开 URL 读取的纯文本内容?

最佳答案

您可能想要检查返回的文本的字符集。它可能是 UTF-8,它经常有那么高的字符。 Ruby 1.9 对字符集和它们之间的切换有很好的支持。我使用 str.encode("US-ASCII", :invalid => :replace, :undef => :replace, :replace => "?") 将字符串强制转换为标准 ASCII , 用 ? 替换任何奇怪的字符。

关于ruby - 清理来自 open(url).read 的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6618883/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com