鍍金池/ 問答/Java  HTML/ 怎么寫正則:每隔4個數(shù)字添加一個空格,并且能夠刪除空格?

怎么寫正則:每隔4個數(shù)字添加一個空格,并且能夠刪除空格?

1.需求:寫一個能夠每寫4個數(shù)字自動添加一個空格的正則
2.問題:正則(也可能不對)寫出來了,但是空格沒法刪除?。?br>3.圖片
clipboard.png

4.代碼
innput監(jiān)聽:

`$("ul.information-list").on('input', ".information-value", function(){
var _this = $(this);
var clean =  _this.parent().next(".clean");
var value = _this.val().trim();
var length = pubblic.cleanSpace(value).length;
// 每個4個數(shù)字加一個空格
if (_this.hasClass("card-input")) {
    _this.val(pubblic.addSpace(value));
}
// 控制清除按鈕顯隱
if(length === 0){
    clean.addClass("hide");
} else {
    clean.removeClass("hide");
}`

公共方法:

// 每個4個數(shù)字加一個空格
pubblic.addSpace = function (num) {
    num = num.replace(/\s/g, "").replace(/(.{4})/g,"$1 ");
    return num;
};

// 清除空格
pubblic.cleanSpace = function (num) {
    num = num.replace(/\s+/g, "");
    return num;
};

5.這就是相關(guān)部分的代碼,求幫助?。?!

回答
編輯回答
幼梔

空格沒法刪除的原因是刪除了空格,但是因為替換函數(shù)又加回去了,我覺得可以設(shè)置一個值用來保存修改之前的變量,在替換函數(shù)之前先判斷當(dāng)前value的值的長度是比之前長還是短,如果是比之前短,那就說明進(jìn)行了刪除操作,就不需要在執(zhí)行替換函數(shù)了

2017年1月22日 04:07