【发布时间】:2013-06-04 08:05:40
【问题描述】:
我刚刚将一个旧项目升级到 Ruby 1.9.3。我在使用 unicode 字符串时遇到了很多麻烦。归结为:
p = "\\username"; "Any String".match(/#{p}/)
这适用于 1.8,并按预期返回 nil。但是,在 1.9 中它会抛出:
ArgumentError: invalid Unicode escape
我正在尝试匹配字符串中的'\u'。我认为这两个反斜杠会使其免于注册为 unicode。
我在这里错过了什么?
编辑:单引号也不起作用:
1.9.3p429 :002 > p = '\\username'; "Any String".match(/#{p}/)
ArgumentError: invalid Unicode escape
from (irb):2
【问题讨论】:
标签: ruby regex ruby-1.9 ruby-1.9.3