gpt4 book ai didi

ruby-on-rails - ruby 正则表达式错误 : incompatible encoding regexp match (ASCII-8BIT regexp with UTF-8 string)

转载 作者:数据小太阳 更新时间:2023-10-29 06:29:12 33 4
gpt4 key购买 nike

我遇到了两个错误,都与编码有关并且都相关。

我在启动 WEBrick 时遇到的第一个错误(技术上是警告):

/Users/USERNAME/example/config/initializers/bb-ruby.rb:54: warning: invalid Unicode Property \P: /\:\-?\P/

它所指的行是:/\:\-?\P/,

这只是一些正则表达式,最终是这个 block 的一部分:

@@tags['Razzing'] = [
/\:\-?\P/,
'<img src="/assets/emoticons/razzing.png">',
'Razzing',
':P',
:razzing]

然后,我在解析一些字符串时也得到了以下错误(大概是由于同一行)...

Encoding::CompatibilityError
incompatible encoding regexp match (ASCII-8BIT regexp with UTF-8 string)

我正在运行 Ruby 1.9.2 和 Rails 3.2.1。

最佳答案

您的正则表达式正在“编译”为 ASCII-8BIT。

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

# encoding: utf-8

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

更新:UTF-8 现在是 Ruby 2.0 及更高版本的默认编码。

关于ruby-on-rails - ruby 正则表达式错误 : incompatible encoding regexp match (ASCII-8BIT regexp with UTF-8 string),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9857443/

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