4

我正在根据客户输入在 xml 中生成一个 Word 文档,当然,每当&使用 an 时它就会爆炸。我尝试用 替换所有实例&&但随后&字面上显示在我的 Word Doc 中。这是我的代码:

        static String replace(String in) {
            String ampersand = "&(?![a-zA-Z][a-zA-Z][a-zA-Z]?[a-zA-Z]?;)";
            return in.replaceAll(ampersand,"&");
        }

有任何想法吗?

4

4 回答 4

2

问题是 & 符号在 TOC 和标题中的转义方式不同。

在 TOC 中,它被转义为&while 在标题中被转义为\u0026.

解决方案是在 TOC 和标题中以不同的方式转义 & 符号:

  • TOC:html转义序列
  • TITLE:Unicode 转义序列。
于 2012-11-04T19:58:40.600 回答
1

您是否尝试用&&(unicode)替换&符号?

于 2010-08-31T22:46:06.540 回答
0

Word 2007 本身就是 &,所以你的问题一定是别的。

于 2010-09-03T08:12:10.050 回答
0

你的正则表达式对我来说似乎是错误的。你为什么不这样做:

    static String replace(String in) {
        return in.replace("&","&");
    }
于 2010-11-10T13:33:52.290 回答