【问题标题】:How to replace invalid characters using java如何使用java替换无效字符
【发布时间】:2014-06-13 14:09:59
【问题描述】:

无效的 XML:第 190 行出错:在 CDATA 部分中发现无效的 XML 字符(Unicode:0x10)。

解析 XML 文件时出现此错误,我使用 String.replaceAll 替换此字符,但我的正则表达式模式似乎不正确。

以下是一个不同的字符串,但它只是将原始字符串返回给我。我该怎么做?

str = str.replaceAll("\\^p", "");

【问题讨论】:

  • 你是怎么解析的? CDATA 部分是未解析的字符数据,没有无效字符之类的东西,因为它不应该被解析,替换或修改它几乎肯定是个坏主意。

标签: java xml regex


【解决方案1】:

使用这个:

String replaced = your_original_string.replaceAll("\\x10", "");
  1. xdd... 是用于匹配单个 unicode 字符的 Java 语法
  2. 你的错误是Unicode: 0x10

【讨论】:

    【解决方案2】:
    str = str.replace("\u0010", "");
    

    或者你可能需要一个空间

    str = str.replace("\u0010", " ");
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-08-13
      • 1970-01-01
      • 2023-02-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-28
      相关资源
      最近更新 更多