java - 如何使用 Java 检测和替换字符串中的不可打印字符?

标签 java replace character non-printable

例如我有这样一个字符串:abc123[*]xyz[#]098[~]f9e

[*] 、 [#] 和 [~] 代表 3 个不同的不可打印字符。 我如何在 Java 中将它们替换为“X”?

弗兰克

最佳答案

我不确定我是否理解你的问题。如果您可以更好地表述它,我认为您可能只需要一个简单的正则表达式替换。

String r = s.replaceAll(REGEX, "X");

REGEX 取决于您的需要:

"\\*|#|~"   : matches only '*', "#', and '~'
"[^\\d\\w]" : matches anything that is neither a digit nor a word character
"\\[.\\]"   : matches '[' followed by ANY character followed by ']'
"(?<=\\[).(?=\\])" : matches only the character surrounded by '[' and ']'

关于java - 如何使用 Java 检测和替换字符串中的不可打印字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2485636/

相关文章:

linux - 用 bash 脚本中的 sed 替换另一个文件中的字符串

javascript - 如何删除正则表达式中特殊字母后的括号

Java,无限循环的替代品?

c - 如何使用 C 中的字符数组进行函数调用

java - ajax 成功函数正在打印 [object Object] 而不是纯文本。为什么?

java - 将同名不同值 JSON 对象合并为唯一的一个

java - 从 Hibernate Annotations 切换到 hbm.xml 文件时出错

java - 在 RIAK 上获取 MapReduce 结果(使用 Java 客户端)

excel - 如何检查单元格是否仅包含特定列表中的字符?

C++ 简单加密