首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

为啥javascript中的replace只替换第一个字符

2011-12-14 
为什么javascript中的replace只替换第一个字符varstraaa,bbb,ccc strstr.replace( , , - )alert

为什么javascript中的replace只替换第一个字符
var   str   =   "aaa,bbb,ccc ";
str   =   str.replace( ", ", "- ");
alert(str);
--------------
结果是“aaa-bbb,ccc”
我想要“aaa-bbb-ccc”
除了循环有没有简单的办法?

不好意思,由于小弟问题太多,现在就剩10分了

[解决办法]
有另一办法
var a= "aaa,bbb,ccc ";
a=(a.split( ', ')).join( "- ");
alert(a);
[解决办法]
又可以用正则表达式
var a= "aaa,bbb,ccc ";
var b=a.replace(/,/g, '- ');
alert(b);
[解决办法]
楼上两位 都可实现 用正则 不错 简单明了

有时间讲一下正则表达式后面的参数 比如说 g
[解决办法]
有时间讲一下正则表达式后面的参数 比如说 g
==========
1。
支持三个标志 i g m
i, 执行大小写不敏感的匹配
g, 执行全局匹配,寻找所有匹配
m, 多行匹配(可在含有换行符时使用)

2。
为什么javascript中的replace只替换第一个字符
=====
String.replace 实际上执行的是正则表达式搜索,当第一个参数为字符串的时候,直接搜索此字符串,并替换第一个匹配,故。。。

热点排行