原始字符串是 "a,d,k" 我想删除所有的 ,和使其成为 "adk"。
"a,d,k"
,
"adk"
我尝试下面的代码,但它不工作。
"a,d,k".replace(/,/,"")
使用 String.replace(),例如。
String.replace()
var str = "a,d,k"; str = str.replace( /,/g, "" );
注意正则表达式上的 g(global)标志,它匹配“ ,”的所有实例。
g
你可以试试这样:
var str = "a,d,k"; str.replace(/,/g, "");
您没有将替换方法的结果分配回您的变量。调用 place 时,它返回一个新字符串,而不修改旧字符串。
例如,将其加载到您最喜欢的浏览器中:
<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
str2
如果你想改变 str1,你应该这样做:
var str1 = "a,d,k"; str1 = str1.replace (/,/g, "");
<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;一起使用
s= document.location.href;
如果你想删除一个以上的字符,说逗号和点,你可以写
<script type="text/javascript"> var mystring = "It,is,a,test.string,of.mine" mystring = mystring.replace(/[,.]/g , ''); alert( mystring); </script>
如果您需要一个大于999,999.00的数字,那么您将遇到一个问题。 这些只适用于少于100万,100万的数字。 他们只删除1或2个逗号。
这里的脚本最多可以删除12个逗号:
function uncomma(x) { var string1 = x; for (y = 0; y < 12; y++) { string1 = string1.replace(/\,/g, ''); } return string1; }
如果需要更大的数字,请修改 for 循环。