我在Java中有一个方法可以去除字符串中的变音符号:
String nfdNormalizedString = Normalizer.normalize(str, Normalizer.Form.NFD);
Pattern pattern = Pattern.compile("\\p{InCombiningDiacriticalMarks}+");
return pattern.matcher(nfdNormalizedString).replaceAll("");
针对这个问题,我有几个简单的测试用例。当我在IDE中运行它们时,它们都能通过测试,但是当我尝试使用Maven运行它们时就失败了。我是通过命令行调用maven的,在我的环境中编码格式为UTF-8。我正在使用苹果提供的最新补丁Java 6版本。
我不知道IDE里面采用的是什么编码格式,但是它也是使用相同的Java。你认为可能会引起这个问题的原因是什么?