我想要提供一个正则表达式来删除除某些字符以外的所有特殊字符。例如,我有一个字符串:删除除一些特殊字符以外的所有字符
str = "subscripción gustaría♥"
我想输出为"subscripción gustaría"
。
我试图做的是,匹配任何不是ascii字符(00 - 7F)而不是我想要的特殊字符,并将其替换为空白。
str.gsub(/(=?[^\x00-\x7F])(=?^\xC3\xB3)(=?^\xC3\xA1)/,'')
这不起作用。最后一个特殊字符不会被删除。
有人可以帮忙吗? (这是红宝石1.8)
更新:我试图让问题更清楚一点。该字符串是utf-8编码的。我试图将ascii角色加上ó和í,将其他所有内容列入黑名单。
不,这删除了所有的特殊字符。我只想♥被删除,而不是ó和í – maheshmurthy 2010-08-05 22:38:07