JAVA - 如何将字符串中的所有\字符替换为\\

标签 java

我正在尝试替换所有 \字符到 \\通过java。这可能是一个愚蠢的问题,但我为此尝试了很多方法。我的尝试如下:

String strToReplace = oldString;

strToReplace = strToReplace.replaceAll("\\","\\\\");

oldString 包含“D:\Work\Project\Data”。我从属性文件中读取的。 上面给了我错误:

Exception in thread "main" java.util.regex.PatternSyntaxException: Unexpected internal error near index 1
\
 ^
    at java.util.regex.Pattern.error(Pattern.java:1955)
    at java.util.regex.Pattern.compile(Pattern.java:1702)
    at java.util.regex.Pattern.<init>(Pattern.java:1351)

还有其他方法可以做到这一点吗?

最佳答案

replaceAll 将您的参数解释为正则表达式。你需要双重转义它。

尝试以下操作:

string.replaceAll("\\\\", "\\\\\\\\");

查看以下link

关于JAVA - 如何将字符串中的所有\字符替换为\\,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54437909/

相关文章:

java - 使用数据库访问的 OOP 编程

java - 如何在带有参数和自定义返回对象的方法上运行 junit 测试

java - JSON 数据错误 Android 非法参数 HttpClient

Java 反射 : making a subclass instance be referred to as if it was super instance

java - eclipse的插件或工具,可以以图形pic格式显示表之间的连接性

java - 如何使用包含换行符和制表符的 ResponseBody 传递详细字符串

java - 获取模式组

java - Swagger 与 Play2 集成

java - Jsp将参数传递给jrxml中的子数据集

java - 如何在 JMS 中初始化初始上下文