我的 HTML 中的所有撇号都被 UI 引擎转换为垃圾。我需要创建一个具有以下模式的正则表达式来替换 Java 中的字符串。
需要特定的模式,因为某些字符在 HTML 中显示为垃圾。整个字符串可以是这样的:company㝵20ac?s
[2 characters]+"20ac"+[1 character]
我需要用单引号替换整个字符串。像这样的东西:
string.replaceAll(<regex>, "\'");
不应该是这样,但是垃圾字符一旦保存在数据库中就无法再被任何java或HTML解析。
最佳答案
如果您想要任意 2 个字符,后跟 20ac
,然后是另一个字符,您可以执行以下操作:
string.replaceAll("..(20ac).","'$1'");
.
表示任何字符。
括号中的内容将被捕获并稍后与 $1
一起使用。
如果您只想替换垃圾字符,您需要在正则表达式中定义它们而不是 .
。
可以是这样的:[㝵]
(将所有垃圾字符放在括号内)。
对于多个字符,您可以使用 *
表示零个或多个字符,使用 +
表示 1 个或多个字符,使用 {2}
表示正好 2 个字符。
所以最终结果可能是这样的 [㝵]+(20ac)\?
关于java - 使用正则表达式替换垃圾字符撇号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53367892/