求助JavaScript字符串替换的问题

rwxdfbb 2009-11-10 04:36:53
本人不太懂正则表达式,在javascript中,想把字符串中所有的的"\"都替换成"/",例如"http:\\a/b\c/d\\\e"能替换成"http://a/b/c/d///e",我试着用函数replace(/\\/g,"/"),发现行不通,replace("\\","/")这能修改一个,由于"\"本身的特殊性,不知从何下手,请高手指点。
...全文
83 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
rwxdfbb 2009-11-11
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 beenz 的回复:]
HTML code<scripttype="text/javascript">var str="http:\\\\a/b\\c/d\\\\\\e";
alert(str.replace(/\\/g,"/" ))</script>
[/Quote]
这样是可以替换,可是替换出来的并不是我想要的啊,我想要的是将所有的的"\"都替换成"/",有一个换一个,我想让"http:\\\\a/b\\c/d\\\\\\e"换成"http:////a/b//c/d//////e",可是结果却是"http://a/b/c/d///e",转换结果有缺失的"/",这该怎么办?
浪尖赏花 2009-11-10
  • 打赏
  • 举报
回复
replace(/\\/g,"/")这个是可以,替换下来结果应该是http:/a/bc/d/e
因为你http:\\a/b\c/d\\\e这个字符串相当于http:\\a/bc/d\\e
即var str = "http:\\a/b\c/d\\\e";

var str ="http:\\a/bc/d\\e";等价
实际字符串为http:\a/bc/d\e

反斜杠表示转义,比如
\\表示\
\c表示c
\e表示e

但是\t \r \n 等等就转义了

具体的LZ可以查下手册
BeenZ 2009-11-10
  • 打赏
  • 举报
回复


<script type="text/javascript">
var str="http:\\\\a/b\\c/d\\\\\\e";
alert(str.replace(/\\/g,"/" ))
</script>

87,994

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧