0
这段代码在开发环境中工作正常,但不适用于生产环境。java normalizer在不同的机器上表现不同
import java.text.Normalizer;
public class TestNorm {
public static void main(String args[]) {
String s = "";
for (String s1: args) {
s = s + " " + s1;
}
System.out.println(Normalizer.normalize(s.toLowerCase(), Normalizer.Form.NFD).replaceAll("[^\\p{ASCII}]", "").replaceAll("[^\\p{Alnum}]+", "-").replaceAll("^[^a-z0-9]+", "").replaceAll("[^a-z0-9]+$", ""));
}
}
(空白)
DevEnv$ java TestNorm hellö
> hello
(空白)
ProdEnv$ java TestNorm hellö
> hell
我缺少什么?为什么我没有得到相同的Normalizer结果; “你好”?
可能是一个有用的信息,以了解
DevEnv$ java -version
java version "1.6.0_37"
Java(TM) SE Runtime Environment (build 1.6.0_37-b06-434-11M3909)
Java HotSpot(TM) 64-Bit Server VM (build 20.12-b01-434, mixed mode)
(空白)
ProdEnv$ java -version
java version "1.7.0_01"
Java(TM) SE Runtime Environment (build 1.7.0_01-b08)
Java HotSpot(TM) Client VM (build 21.1-b02, mixed mode, sharing)
不同的区域? –
@DanielFischer最有可能。仍然不知道如何修理或修理什么 –