如何从javascript中的字符串中删除“,”

时间:2009-05-26 01:46:29

标签: javascript string

原始字符串是“a,d,k” 我想删除所有“,”并将其设为“adk”。 我试过:“a,d,k”.replace(/,/,“”)但它不起作用。 提前谢谢。

6 个答案:

答案 0 :(得分:113)

您没有将替换方法的结果分配回变量。当您调用replace时,它会返回一个新字符串而不修改旧字符串。

例如,将其加载到您喜欢的浏览器中:

<html><head></head><body>
    <script type="text/javascript">
        var str1 = "a,d,k";
        str1.replace(/\,/g,"");
        var str2 = str1.replace(/\,/g,"");
        alert (str1);
        alert (str2);
    </script>
</body></html>

在这种情况下,str1仍为"a,d,k"str2"adk"

如果您想更改str1,您应该这样做:

var str1 = "a,d,k";
str1 = str1.replace (/,/g, "");

答案 1 :(得分:38)

使用String.replace(),例如

var str = "a,d,k";
str = str.replace( /,/g, "" );

请注意正则表达式上的g(全局)标志,该​​标志匹配“,”的所有实例。

答案 2 :(得分:4)

您可以尝试以下内容:

var str = "a,d,k";
str.replace(/,/g, "");

答案 3 :(得分:4)

如果您想删除多个字符,请说逗号和点,您可以写

<script type="text/javascript">
  var mystring = "It,is,a,test.string,of.mine" 
  mystring = mystring.replace(/[,.]/g , ''); 
  alert( mystring);
</script>

答案 4 :(得分:-2)

<script type="text/javascript">var s = '/Controller/Action#11112';if(typeof s == 'string' && /\?*/.test(s)){s = s.replace(/\#.*/gi,'');}document.write(s);</script>

这是更常见的答案。并且可以与s= document.location.href;

一起使用

答案 5 :(得分:-3)

如果您需要一个大于999,999.00的数字,您将遇到问题 这些仅适用于少于100万,1,000,000的数字 他们只删除1或2个逗号。

这里的脚本最多可删除12个逗号:

function uncomma(x) {
  var string1 = x;
  for (y = 0; y < 12; y++) {
    string1 = string1.replace(/\,/g, '');
  }
  return string1;
}

如果您需要更大的数字,请修改for循环。