我想要提供一個正則表達式來刪除除某些字符以外的所有特殊字符。例如,我有一個字符串:刪除除一些特殊字符以外的所有字符
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