替换java中字符串中的特殊字符

zah*_*hir 5 java regex string

我想知道如何在Java中替换字符串.

例如

String a = "adf?sdf";
Run Code Online (Sandbox Code Playgroud)

如何更换和避免特殊字符?

Bal*_*usC 14

你可以摆脱外界的所有字符的打印的ASCII范围内使用String#replaceAll()通过更换图案[^\\x20-\\x7e]为一个空字符串:

a = a.replaceAll("[^\\x20-\\x7e]", "");
Run Code Online (Sandbox Code Playgroud)

但这实际上并不能解决您的实际问题.这更像是一种解决方法.根据给定的信息,很难确定这个问题的根本原因,但阅读这些文章中的任何一个都必须帮助很多:


Dan*_*ski 2

在不了解更多背景的情况下很难回答这个问题。

一般来说,您可能会遇到编码问题。有关字符编码的概述,请参阅每个软件开发人员 (...) 必须了解的有关 Unicode 和字符集的绝对最低限度。