字符串:string s = "1,2,3,4,5,"
目标:删除最后一个 ","
方法:
1、用的最多的是substring,这个也是我一直用的, 一定要注意大小写,武林网小编已经测试过了。
var s = "1,2,3,4,5,"
s=s.substring(0,s.length-1)
alert(s);
2、用正则表达式实现
var str="a,b,c,d,"
var reg=/,$/gi;
str=str.replace(reg,"");
alert(str);
3、用prototype扩展
<script type="text/javascript">
//删除指定索引位置的字符,索引无效将不删除任何字符
String.prototype.deleteCharAt=function(sIndex){
if(sIndex<0 || sIndex>=this.length){
return this.valueOf();
}else if(sIndex==0){
return this.substring(1,this.length);
}else if(sIndex==this.length-1){
return this.substring(0,this.length-1);
}else{
return this.substring(0,sIndex)+this.substring(sIndex+1);
}
}
//上面的函数一定要放上面,否则不起作用
var s = "1,2,3,4,5,";
var index = s.toString().lastIndexOf(',');
var s=s.deleteCharAt(index);
alert(s);
</script>
4、用 RTrim,这个我原来只知道用来删除最后的空格,也没有仔细看过其它的用法,才发现可以直接trim掉一些字符
s=s.ToString().RTrim(',')
5、用TrimEnd,这个东西和RTrim差不多,区别是这个传递的是一个字符数组,而RTrim可以是任何有效的字符串
s=s.TrimEnd(',')
//如果要删除"5,",则需要这么写
char[]MyChar={'5',','};
s=s.TrimEnd(MyChar);
//s="1,2,3,4"
类似函数:
TrimStart,LTrim等
还有一个TrimToSize对提高性能有微弱的好处....
string.TrimEnd().Remove(string.Length - 2, 1)
string.Remove()
注:前三种经过武林网小编的整理与测试,可以正常使用,推荐第一种与第二种方法,从第四种以后没有测试,都是通过自定义函数来实现的,大家可以自行扩展,特别注意下大小写。