我正在为String类编写一个扩展方法来清理非ASCII字符。我正在清理的字符串是UTF-8。
在文件中使用非ASCII字符时,控制台将无法启动,因为它将卷曲引号解释为常规引号。
如何逃避gsub中的卷曲引用?
如何编写使用unicode作为假引号的gsub(例如U + 201C)。
使用Rails 3.07和Ruby 1.9.2。
答案 0 :(得分:14)
您可以在双引号字符串中使用的正则表达式中使用相同的\u
转义符:
s.gsub(/[\u201c\u201d]/, '"')
例如:
>> s = "\u201Cpancakes\u201d"
=> "“pancakes”"
>> puts s.gsub(/[\u201c\u201d]/, '"')
"pancakes"