用js替換除數字與逗號以外的所有字元的代碼_javascript技巧

來源:互聯網
上載者:User

用js替換除數字與逗號以外的所有字元

複製代碼 代碼如下:

<script language="javascript"> 
var str="asdfk,asdf345345,345345";
//替換除數字與逗號以外的所有字元。
str=str.replace(/[^0-9,]*/g,"");
//去掉第一個逗號
if (str.substr(0,1)==',') str=str.substr(1);
//去掉第二個逗號
var reg=/,$/gi;
str=str.replace(reg,"");
alert(str);
</script>

結果:

複製代碼 代碼如下:

345345,345345


完整代碼:

複製代碼 代碼如下:

FCKinsertdown.Add = function(strtemp,str) {
if(strtemp.indexOf(",")>-1){
strtemp=dostr(strtemp);
var strs= new Array(); //定義一數組
strs=strtemp.split(","); //字元分割
for (i=0;i<strs.length ;i++ ) {
if(i==strs.length){
FCK.InsertHtml("[downsoft]"+trim(strs[i])+"[/downsoft]") ;
}else{
 FCK.InsertHtml("[downsoft]"+trim(strs[i])+"[/downsoft]<br />") ;
 }
     }
 }else{
  FCK.InsertHtml("[downsoft]"+dostr(strtemp)+"[/downsoft]") ;
  }
}

function dostr(str){
str=trim(str);
var strarry=unique(str.split(","));
str=strarry.join(",");
str=str.replace(/,/ig,",");
str=str.replace(/[^0-9,]*/ig,"");
str=str.replace(new RegExp(',+',"gm"),',');
if (str.substr(0,1)==',') str=str.substr(1);
var reg=/,$/gi;
str=str.replace(reg,"");
return str;
}

//去重複數組
function unique(data){
    data = data || [];
    var a = {};
len = data.length;
    for (var i=0; i<len;i++){
 var v = data[i];
        if (typeof(a[v]) == 'undefined'){
                               a[v] = 1;
                               }
    };
    data.length=0;
      for (var i in a){
               data[data.length] = i;
         }
        return data;
}
//供使用者調用
function trim(s){
return trimRight(trimLeft(s));
}
//去掉左邊的空白
function trimLeft(s){
if(s == null) {
return "";
}
var whitespace = new String(" \t\n\r");
var str = new String(s);
if (whitespace.indexOf(str.charAt(0)) != -1) {
var j=0, i = str.length;
while (j < i && whitespace.indexOf(str.charAt(j)) != -1){
j++;
}
str = str.substring(j, i);
}
return str;
}
//去掉右邊的空白
function trimRight(s){
if(s == null) return "";
var whitespace = new String(" \t\n\r");
var str = new String(s);
if (whitespace.indexOf(str.charAt(str.length-1)) != -1){
var i = str.length - 1;
while (i >= 0 && whitespace.indexOf(str.charAt(i)) != -1){
i--;
}
str = str.substring(0, i+1);
}
return str;
}


雲棲社區原創文章,轉載請註明出處。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.