carList = cars.innerHTML;
alert(carList);
carList = carList.replace("<center>","").replace("</center>","").replace("<b>","").replace("</b>","");
alert(carList);
为什么世界会发生这种情况?我已经尝试将其拆分为单独的string.replace(),并给出相同的结果。
答案 0 :(得分:18)
将.replace()
与字符串一起使用只会修复您看到的第一个匹配项。如果你使用正则表达式来代替它,你可以指定它应该是全局的(通过之后用g
指定它),从而完成所有事件。
carList = "<center>blabla</center> <b>some bold stuff</b> <b>some other bold stuff</b>";
alert(carList);
carList = carList.replace(/<center>/g,"").replace(/<\/center>/g,"").replace(/<b>/g,"").replace(/<\/b>/g,"");
alert(carList);
有关正常工作的样本,请参阅此fiddle。
答案 1 :(得分:2)
您可以使用正则表达式同时匹配所有这些:
carList = carList.replace(/<\/?(b|center)>/g,"");
匹配字符串末尾的g
标志告诉Javascript替换所有匹配项,而不仅仅是第一个匹配项。