【记录】正则替换的偏方

一.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 }

最终效果是成对的小数点包括中间的数字都会被替换, 如果是单数个小数点, 会保留最后一个

 

热门相关:流鱼无恙   上神来了   富贵不能吟   上神来了   戏精老公今天作死没