【发布时间】:2011-08-08 14:06:37
【问题描述】:
“a”上方的变音符号不应该被正则表达式删除吗?
"hǎo".gsub(/\p{Nonspacing_Mark}/, '')
=> "hǎo"
"hǎo".gsub(/\p{Mn}/, '')
=> "hǎo"
更新:
我从它在 Java 中的工作方式中得到了它。
Normalizer.normalize("hǎo", Form.NFD).replaceAll("\\p{Mn}+", "")
我需要先对其进行规范化,将“ǎ”拆分为“a”和变音符号。
【问题讨论】:
-
Ruby 知道你的源代码是 UTF-8 吗?
-
您是否因为不知道如何以“不区分重音”的方式比较两个字符串而想要这种邪恶?