新手问题 一段字符串,怎么高效的把所有中文符号,换成英文符号?

zztczcx · 2014年03月31日 · 最后由 lululau 回复于 2014年03月31日 · 2924 次阅读

或者类似这样的正则 msg.gsub(/&nbsp\;/,"&").gsub(/\,/,",").gsub(/\(/,"(").gsub(/\)/,")"), 能写到一句话里面?

简单的一一对应 String#tr 就行

要用正则可以用 String#gsub 第二种形式……

# Ruby 2.1.1 测试通过,str 的编码为 UTF-8
# 只能替换这些标点:!"#$%&'()*+,-./
str.gsub(/[\uFF01-\uFF0F]/) {|s| (s.ord-65248).chr}
需要 登录 后方可回复, 如果你还没有账号请 注册新账号