在java中用反斜杠转义空间

Posted

技术标签:

【中文标题】在java中用反斜杠转义空间【英文标题】:Escape space with backslash in java 【发布时间】:2015-11-19 21:57:06 【问题描述】:

我想替换路径字符串中的空格。我在下面尝试过,但似乎没有用:

String path = "/Users/TD/San Diego";
path=path.replaceAll(" ","\\ ");
System.out.println(path);

目标是转化

“/Users/TD/San Diego”到“/Users/TD/San\ Diego”

字符串中的任何其他空格也需要替换为“\”

【问题讨论】:

为什么?他们按原样工作。 【参考方案1】:

你可以改变

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

转义反斜杠

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

当我这样做时,我得到(请求的)

/Users/TD/San\ Diego

另一种选择是使用String.replace like

path = path.replace(" ", "\\ ")

输出相同。

【讨论】:

【参考方案2】:

建议的解决方案对我不起作用(在 android Java 中)。

所以这是我经过多次尝试后想出的:

path = path.replace(" ", (char) 92 + " ");

【讨论】:

以上是关于在java中用反斜杠转义空间的主要内容,如果未能解决你的问题,请参考以下文章

特殊字符一一反斜杠()

java 字符串反斜杠怎么转义

jquery 冒号转义 为啥双斜杠

转义反斜杠在javascript中打印两个反斜杠

python 如何快速转义路径字符串中的斜杠

MySQL中如何插入反斜杠,反斜杠被吃掉,反斜杠转义(转)