HY 我尝试使用gsub来删除这个角色'是carful它不是'或者我认为他来自Word(微软)。 我真的不明白为什么我不能删除这个角色,因为我可以删除所有其他
当我使用gsub时:
pattern = /(\’|\"|\.|\*|\/|\-|\\|\)|\$|\+|\(|\^|\?|\!|\~|\`)/
restring = string.gsub(pattern){|match|" " }
我在下方收到此错误
syntax error, unexpected $end, expecting keyword_end
pattern = /(\’|\"|\.|\*|\/|\-|\\|\)|\$|\+|\(|\^|\?|\!|\~|\`)/
^
答案 0 :(得分:0)
当我通过Rubular的网站运行您的RegEx时,我得到了这个;
我认为这是一个UTF-8问题,经过一些额外的堆栈溢出后,在rails应用中将# encoding: utf-8
添加到文件顶部似乎很常见。
答案 1 :(得分:0)
您可以在正则表达式中添加以下内容:
/\u2018|\u2019|\u201A/
是一些单引号:["‘", "’", "‚"]
。
如果你感兴趣,这里有一个我以前用来清理Word文本的简单方法(在线汇总了很多资源):
def replace(text)
text.
gsub(/[\u2018|\u2019|\u201A]/, "\'").
gsub(/[\u201C|\u201D|\u201E]/, "\"").
gsub(/\u2026/, "...").
gsub(/[\u2013|\u2014]/, "-").
gsub(/\u02C6/, "^").
gsub(/\u2039/, "<").
gsub(/\u203A/, ">").
gsub(/[\u02DC|\u00A0]/, " ")
end