gpt4 book ai didi

java - 如何从 Java 字符串中删除版权字符和其他非 ASCII 字符?

转载 作者:行者123 更新时间:2023-12-01 07:23:30 27 4
gpt4 key购买 nike

我正在使用 Java 6(目前无法升级)。我有一个包含以下值的 Java 字符串:

My Product Edition 2014©

最后一个符号是版权符号 (©)。当此字符串输出到我的终端(在 Mac 10.9.5 上使用 bash)时,版权符号呈现为问号。

我想知道如何从字符串中删除所有在终端上呈现为问号的字符。

最佳答案

这里要做的“正确”的事情是修复你的终端,这样它就不会打印方 block 。请参阅How do you echo a 4-digit Unicode character in Bash?并尝试直接在终端中回显 Unicode 字符。它可能就像确保您的 LANG 环境变量设置为 UTF-8 一样简单(在我的 Mac 上,$LANGen_US .UTF-8)。您还可以考虑使用功能更齐全的终端,例如 iTerm2 .

如果您确实想在 Java 中去除非 ASCII 字符,有许多同样合理的方法可以做到这一点,但我更喜欢 GuavaCharMatcher ,例如:

String stripped = CharMatcher.ASCII.retainFrom(original);

您可以使用Pattern删除不需要的字符,但是(如困惑 here 所示)它比使用 Guava 的开箱即用解决方案更麻烦。

关于java - 如何从 Java 字符串中删除版权字符和其他非 ASCII 字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30111273/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com