我从Microsoft Word文档(.doc)中的表中提取数据。
数据提取很好但在每个提取值的末尾(来自每个单元格)存在不可打印的^ G字符,这严重影响了进一步处理。当我将控制台输出粘贴到我的文本编辑器(TextMate)时,我只能看到这一点。
使用正则表达式删除此内容的最佳方法是什么。这是一个unicode角色吗?我找不到任何对^ G不可打印字符的引用。我认为它是细胞特征的终结。说实话,我宁愿摆脱所有不可打印的角色,但目前这是唯一一个导致我出现任何问题的角色,所以任何解决方案都可以。
答案 0 :(得分:1)
说实话,我宁愿摆脱所有不可打印的字符
您可以使用:
input = input.replaceAll("\\P{Print}", "");
在Java中删除所有不可打印的字符。
\p{Print}
matches all printable characters(包括Unicode的)和\P{Print}
通过匹配所有不可打印的字符来反过来。