3

我有类似的代码

text[from..to] = text_insertion

问题是from并且to将 UTF8 编码的字符计算为一个字符,而上面的代码在 Ruby 1.8.7 中按字节计算

我必须使用 Ruby 1.8.7

我可以使用哪个 gem 来使我的代码正常工作?我也可以重写它以使用String#substr或类似的东西,但我还没有找到任何库,它给了我尊重 UTF8 编码的方法。

4

1 回答 1

2

您可以使用 ActiveSupport 的String#mb_chars方法。它让你写这样的东西:

text.mb_chars[from..to] = text_insertion

自 2.2 起,它在所有版本的 ActiveSupport 中都可用。

于 2011-06-27T11:02:28.567 回答