一.Input中的字元串按數字規則替換 1. 包含正號,負號,小數點的浮點數 本身的正則替換是無法單次實現完美替換的, 這個方法會刪掉用於匹配的一些數字, 優點是它能保證輸入的合法性, 缺點是刪去的部分需要重新輸入 1 if (str.length 1) { 2 newStr = str.repla ...
一.Input中的字元串按數字規則替換
1. 包含正號,負號,小數點的浮點數
本身的正則替換是無法單次實現完美替換的, 這個方法會刪掉用於匹配的一些數字, 優點是它能保證輸入的合法性, 缺點是刪去的部分需要重新輸入
1 if (str.length === 1) { 2 newStr = str.replace(/([^-+\d])/g, ''); // 當長度為1時, 單獨限制小數點輸入. 3 } else { 4 newStr = str.replace(/([^-+.\d])|(\d[-+])|([-+.]{2,})|([.]\d+[.])/g, ''); // [限制字元][限制數字後不能接-+][限制三種符號不能連續組合出現兩次及以上][限制兩個小數點之間不能接數字] 5 }
最終效果是成對的小數點包括中間的數字都會被替換, 如果是單數個小數點, 會保留最後一個