java - 如何从 Java 中的 ®、©、™ 等字符串中删除高位 ASCII 字符

标签 java string

我想从 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/

相关文章:

Java:JButton数组不会改变大小

java - ResultSet如何把它放到一个ArrayList中

java - 类泛型打破了完全独立的方法

java - 有什么(任何方式)可以比 StringWriter 更快地连接 java 字符串吗?

string - 比较两个字符串产生一个数字增量

java - 从对象实例实例化对象

java - 错误 : input directory 'Files' does not exist

swift - 将字符串中的重音字符替换为基本字符 - ą -> a , ć -> c

python - 在Python中查找拆分字符串的所有列表排列

javascript - 理解另一个添加数字数字的 Javascript 片段