我正在用 Ruby (1.9.3) 制作一个基本的翻译器。我从本地测试文件('a.txt')中提取并使用 gsub 替换某些匹配项以模仿从当代英语到中/早期现代英语的翻译。我遇到了一个可读性问题:
如何使大量 gsub 的使用更易于阅读?我尝试使用以开头的多行
def translate
@text.gsub(/my/, 'mine')
@text.gsub(/\sis\s/, ' be ')
end
但这只会打印最终的 gsub。我只能假设第二个请求会覆盖第一个请求。我想避免创建一大堆 gsub 请求,但我似乎找不到合适的答案。
这是我当前程序的示例:
lines = File.readlines('a.txt')
@text = lines.join
def translate
@text.gsub(/my/, 'mine').gsub(/\sis\s/, ' be ').gsub(/y\s/, 'ye ').gsub(/t\s/, 'te ').gsub(/t\,/, 'te,').gsub(/t\./, 'te.')
end
puts translate
如果这个要求看起来非常基本,我提前道歉。干杯!