如何解决与Ruby的兼容性错误

时间:2018-10-16 02:27:59

标签: ruby regex encoding utf-8

我有一个ruby程序,该程序可以解析带有大量正则表达式的大量文本。我遇到的问题是,只要文本中包含“特殊字符”(例如Kuutõbine或Noël),程序就会抛出Encoding::CompatibilityError: incompatible encoding regexp match (UTF-8 regexp with ASCII-8BIT string)我该如何强制正确的编码?

1 个答案:

答案 0 :(得分:-2)

您的Regex被“编译”为ASCII-8BIT。

只需在声明Regex的文件顶部添加编码声明:

编码:utf-8

您已完成。现在,当Ruby解析代码时,它将假定您使用的每个文字(正则表达式,字符串等)都以UTF-8编码指定。