var str= 'aa$^&*%bb*()*()*cc*()(*dd______dd___';
将aa转成AA  bb转成BB  cc转成CC dd转成DD我是这么写的 
var t ={
  aa : "AA",
  bb : "BB",
  cc : "CC",
  dd : "DD"
};
for(var i in t)
    str=str.replace(new RegExp(i,"g"),t[i]);
alert(str)
可以不用循环写吗

解决方案 »

  1.   


    <script type="text/javascript">var   str=   'aa$^&*%bb*()*()*cc*()(*dd______dd___ '; 
    document.write(str.toUpperCase())</script>
      

  2.   

    如果所有小写字符均可以从小写转换成大写,则使用str.toUpperCase()是很直接的方法。
    如果只是替换aa,bb,cc,dd,如LZ所写,则使用正则表达式好
    str.replace(/aa|bb|cc|dd/g,function(s){ return s.toUpperCase(); } );
      

  3.   

    var str = "aa,sdf,bb,cc,dsfdd"
    var str = str.replace(/aa|bb|cc|dd/g,function(s){return s.toUpperCase(); } );
    alert(str);