在Java中用'\\'替换单个'\' [英] Replacing single '\' with '\\' in Java

查看:226
本文介绍了在Java中用'\\'替换单个'\'的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何用'\\'替换单个'\'?当我运行 replaceAll()然后我收到此错误消息。

How do I replace a single '\' with '\\'? When I run replaceAll() then I get this error message.

Exception in thread "main" java.util.regex.PatternSyntaxException:
                           Unexpected internal error near index 1 \
                                                                  ^
    at java.util.regex.Pattern.error(Pattern.java:1713)
    at java.util.regex.Pattern.compile(Pattern.java:1466)
    at java.util.regex.Pattern.<init>(Pattern.java:1133)
    at java.util.regex.Pattern.compile(Pattern.java:823)
    at java.lang.String.replaceAll(String.java:2190)
    at NewClass.main(NewClass.java:13)
Java Result: 1

我的代码:

public class NewClass {
    public static void main(String[] args) {
        String str = "C:\\Documents and Settings\\HUSAIN\\My Documents\\My Palettes";
        str = str.replaceAll("\\", "\\\\");
        System.out.println(str);
    }
}


推荐答案

< a href =http://docs.oracle.com/javase/6/docs/api/java/lang/String.html#replaceAll%28java.lang.String,%20java.lang.String%29 = noreferrer> String.replaceAll(String,String) 是正则表达式。

String。 replace(String,String) 会做你想要的。

String.replaceAll(String,String) is regex.
String.replace(String,String) will do what you want.

以下......

String str = "C:\\Documents and Settings\\HUSAIN\\My Documents\\My Palettes";
System.out.println(str);
str = str.replace("\\", "\\\\");
System.out.println(str);

生产......


C:\Documents and Settings \HUSAIN \ My Documents \ My Palettes

C:\\Documents and Settings \\HUSAIN \\ My Documents \\My Palettes

C:\Documents and Settings\HUSAIN\My Documents\My Palettes
C:\\Documents and Settings\\HUSAIN\\My Documents\\My Palettes

这篇关于在Java中用'\\'替换单个'\'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆