将“\”更改为“/”
我正在寻找一段简单的代码,将字符串中的所有反斜杠更改为使用java正向斜杠。我尝试过: word.replaceAll(“\”,“/”);将“”更改为“/”
但它不起作用。任何人都可以快速解决这个问题?
谢谢
P.S. 我也只是注意到,几乎没有任何我的字符串操作正在工作。我尝试了toUpperCase()之类的东西,而且没有任何事情发生在字符串?!
replaceAll()
是错误方法在这种情况下使用,因为它使用regular expressions相匹配。
你想要更简单的replace()
替换文字的方法。试试这个:
word = word.replace("\\","/");
注:
- 你必须逃脱与另一个反斜杠反斜杠,即
"\\"
是你如何编写一个字符串,是一个单反斜线 - 字符串是immutable - String方法返回一个新字符串与结果...他们不更改字符串。这就是为什么你需要编码它像
myString = myString.someMethod();
这些函数将返回一个新字符串,其中包含您试图实现的更改,而不会更改字符串本身。在\
情况下,你可能需要使用一个转义斜杠(\\
)
对不起,这就是我想输入原始问题的意思,所以我使用的函数是:word.replaceAll(“\\”,“/”); – intA
在这种情况下,你可能需要使用:
word.replaceAll(("\\", "/");
toUpperCase()
回报一个字符串,它不会改变字符串调用方法。
http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html
哦!这是我相信的问题。我需要做word = word.replaceAll(“\\”,“/”)谢谢! – intA
字符串是不可变。
他们永远不会改变。您需要编写word = word.something()
。
所有你需要做的是word = word.replaceAll(“\”,“/”);
你必须知道一个字符串不能被改变。
这些方法通过遍历字符串中的字符,并用斜杠
String类是不可变的,因此永远不会改变更换所有的侧隙工作。它始终会返回一个新的副本,并进行更改。 –