gpt4 book ai didi

java - 替换 Java 中字符串中所有不一致的字符

转载 作者:行者123 更新时间:2023-12-01 18:42:01 25 4
gpt4 key购买 nike

嗯,我有一个包含字母、数字和一些“奇怪”字符的字符串。我想用“空格”替换这个“奇怪”的字符。

看看我原来的字符串:

AVE  14 DE JULHO N�130

我想替换为:

AVE 14 DE JULHO N 130

这只是一个例子,但我有一个大文件,其中有很多“正常字符”和另一个“奇怪字符”

最佳答案

您可以使用 replaceAll 替换与模式匹配的所有字符:

String bad = "AVE  14 DE JULHO N�130";
String badPattern = "[^a-zA-Z0-9 ]"; // anything not a good character
String good = bad.replaceAll(badPattern, " ");

或者,如果您知道坏字符的范围:

String bad = "AVE  14 DE JULHO N�130";
String badPattern = "[\\u0080-\\uffff]"; // anything above U+007f
String good = bad.replaceAll(badPattern, " ");

请注意,最后一个只是正匹配模式的示例,而不是建议使用什么范围!该范围尤其会消除大多数重音符号。

编辑这些“奇怪”的字符很可能实际上是好字符,它们在构建(或使用)字符串的过程中的某个地方使用错误的字符编码进行了解释。找到并纠正存在编码错误的地方可能比尝试过滤掉错误结果更好。

关于java - 替换 Java 中字符串中所有不一致的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19593399/

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