I know alot of answers are out there for string replace in javascript, but I can't find one for \/ to /. please help me out on this or send me some link to how to write regular expressions in so to replace. Thank you
Asked
Active
Viewed 5,100 times
-3
-
6Whats your input and whats your output? – Govan Nov 12 '13 at 13:40
-
your question is not clear. – Sudarshan Tanwar Nov 12 '13 at 13:41
-
Also with the input/output it's good form to see the code that you have tried that is not working. – Joel Peltonen Nov 12 '13 at 13:45
-
look like input is JSON ... or what ? – l2aelba Nov 12 '13 at 13:46
1 Answers
2
Because a backslash is used as an escape character, you'll need to escape it:
str = str.replace("\\/", "/");
The above replaces \/
with /
. In general, anywhere you use a backslash in a string, you probably need to escape it. So, to replace /\
with /
, you'd use:
str = str.replace("/\\", "/");
These will, of course, only replace one instance in the string. To replace multiple instances, use a regular expression with the g
(global) modifier:
str = str.replace(/\\\/|\/\\/g, "/")
Here, because forward slashes have meaning as regex terminators, you're having to escape the forward slash as well as the backslash. The alternative is to use the RegExp
class:
str = str.replace(new RegExp("\\\\/|/\\\\", "g"), "/")
In this one, you're having to escape the backslash twice — once to escape it in the string, and once in the regex. (Here's a better explanation.)