java - 打印带有未格式化字符 ("\t"而不是制表符的字符串)

标签 java regex

我正在从其他方式看不到的来源中读取一串文本。我想查看实际的格式代码,例如: \t\n 等,而不是实际的制表符和换行符

当我使用 System.out.println 打印字符串时,我可以直观地看到选项卡,并且必须通过鼠标突出显示来对它们进行计数。

我尝试使用正则表达式将字符串中的 \t 替换为 \\t 但我对正则表达式的经验很少,所以我不确定如果我的表达是正确的。这是我所拥有的:

String text = extractor.getText();
text.replaceAll("\n", "\\n");

如果可能的话,我希望有一种无需正则表达式的替代方法。如果有任何区别,我正在使用 XSSFExcelExtractor

最佳答案

如果您想查看 Java 将转换的所有字符,可以尝试使用 apache commons 中的 StringEscapeUtils

String s="\r\t\n abc";
System.out.println(StringEscapeUtils.escapeJava(s));

输出

\r\t\n abc
<小时/>

如果您只想转义 \t\n,您可以使用

String escaped = origina.replace("\t","\\t").replace("\n","\\n)"`

关于java - 打印带有未格式化字符 ("\t"而不是制表符的字符串),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19216612/

相关文章:

python正则表达式向前看正+负

python - 符号表达式分组的正则表达式

java - 为什么更新 HttpServletResponse 需要这么长时间? ( Apache 汤姆猫)

Java 时间戳 - 如何创建日期为 23/09/2007 的时间戳?

java - 改变静态 boolean 值

java - 以文件形式访问 Java 资源

java - 如何使用 guava CacheBuilder?

c# - 计算文本文件中的单词数

regex - MongoDB中的慢正则表达式查询

regex - 使用 Perl 和 Regex 将文件名排序到数组中