我想从 Java 中的字符串中检测并删除 ®、©、™ 等高位 ASCII 字符。是否有任何开源库可以做到这一点?
最佳答案
如果您需要删除所有非 US-ASCII(即 0x0-0x7F 之外的)字符,您可以这样做:
s = s.replaceAll("[^\\x00-\\x7f]", "");
如果需要过滤很多字符串,最好使用预编译模式:
private static final Pattern nonASCII = Pattern.compile("[^\\x00-\\x7f]");
...
s = nonASCII.matcher(s).replaceAll();
如果它真的对性能至关重要,也许 Alex Nikolaenkov 的建议会更好。
关于java - 如何从 Java 中的 ®、©、™ 等字符串中删除高位 ASCII 字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5008422/