java - 如何在java字符串中应用转义字符

标签 java string escaping eval

我的问题是 我从文件中读取文本 在文本文件中有一些类似的文本

Base64.valueOf("\030)?8*\"q1;16=\0331:?5/8~:8(6y", 42 - -33))

我能够使用正则表达式获取文本

\030)?8*\"q1;16=\0331:?5/8~:8(6y

但是下面的语句中的字符串相等

regText = "\\030)?8*\\"q1;16=\\0331:?5/8~:8(6y"

但我想要的确切字符串是

expectedText = "\030)?8*\"q1;16=\0331:?5/8~:8(6y"

那么如何将 regText 转换为预期文本

here它几乎达到了我的预期

只不过不是将“\030”转为“\030”而是转为“030”

最佳答案

如果写入文件的程序一开始就正确写入数据,那么您的问题就会变得更容易。如果这不可能,请使用 apache commons lang 中的 StringEscapeUtils。

System.out.println(StringEscapeUtils.unescapeJava("New line: \\n Tab: \\t"));

该调用手动处理\n 并将其转换为换行符。它只处理文字。对于八进制和 other escapes ,你只能靠自己了。您始终可以 fork 代码并处理八进制。

关于java - 如何在java字符串中应用转义字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15848488/

相关文章:

java - 如何使用 MySQL 表中的 blob 填充 JLabel

java - 如何从 XSD 文件获取数据

java - 使用换行正则表达式仅拆分字符串整数

c# - 我可以使用 Format 而不是使用 substring 吗?

java - 方法返回 "infinite"响应数量

java - 正则表达式一或两个特定字母

尝试将字符串编码/解码为 UTF-8 后引发 Java 服务器线程空指针异常错误

c# - 取消转义由 mvc 应用程序返回的转义 unpritable 编码字符串的简单方法

swift - 如何在 ""内打印双引号?

ruby - 如何在 ruby​​ 中将字符串更改为 http 形式?比如#到%23