1
<
html
>
2
<
head
>
3
<
title
>
js 字符串替换问题
</
title
>
4
<
meta
http-equiv
="content-type"
content
="text/html;charset=utf-8"
>
5
<
script
>
6
function
show_msg()
7
{
8
9
var
ori_str
=
'
2011-03-28
'
;
10
var
rep_str
=
ori_str.replace(
'
-
'
,
'
/
'
);
11
var
reg_rep_str
=
ori_str.replace(
/
-
/
g,
'
/
'
);
var reg_rep_without_g_str = ori_str.replace(/-/, '/');
12
alert('ori_str:' + ori_str + '\r\n' + 'rep_str:' + rep_str + '\r\n' + 'reg_rep_str:' + reg_rep_str + '\r\n' + 'reg_rep_without_g_str:' + reg_rep_without_g_str);
13
}
14
</
script
>
15
</
head
>
16
<
body
onload
="show_msg();"
>
17
</
body
>
18
</
html
>
执行上面的html代码就会知道replace($pattner, $replace),如果$pattner为一个字符串的话,那么js只做一次替换就结束了。
如果,我们需要把字符串所有匹配的内容都替换掉的话,需要将$pattner设置为1个正则表达式,并且必须带上修饰符g。