JAVA-如何将字符串中的所有\字符替换为\\
我试图用java将所有JAVA-如何将字符串中的所有\字符替换为\\,java,Java,我试图用java将所有\字符替换为\\。这可能是个愚蠢的问题,但我已经为此尝试了很多方法。我的尝试如下: String strToReplace = oldString; strToReplace = strToReplace.replaceAll("\\","\\\\"); 旧字符串包含“D:\Work\Project\Data”。我从属性文件中读取的。 以上是给我的错误: Exception in thread "main" java.util.regex.PatternSyntaxEx
\
字符替换为\\
。这可能是个愚蠢的问题,但我已经为此尝试了很多方法。我的尝试如下:
String strToReplace = oldString;
strToReplace = strToReplace.replaceAll("\\","\\\\");
旧字符串包含“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)
线程“main”java.util.regex.PatternSyntaxException中的异常:索引1附近出现意外内部错误
\
^
位于java.util.regex.Pattern.error(Pattern.java:1955)
位于java.util.regex.Pattern.compile(Pattern.java:1702)
Pattern.(Pattern.java:1351)
还有其他方法吗?
replaceAll
将您的参数解释为正则表达式。你需要加倍逃避它
请尝试以下操作:
string.replaceAll("\\\\", "\\\\\\\\");
请参见下文第一行本身无法编译!也许您需要将
strotreplace
定义为“D:\\Work\\Project\\Data”代码>我编辑了这个问题。字符串包含我从属性文件读取的值。您是否尝试过strToReplace.replace(“\\”,“\\\”)
?