• 数据类型输入限制


    考验正则的时候到了!

    数字型

    1,整数

    //1,保存第一个字符
    let first_char = obj.value.charAt(0);
    
    //2,只保留数字
    obj.value = obj.value.replace(/[^d]/g,'');
    
    //处理开头的0
    obj.value = obj.value.replaceAll(/[^d]/g,'');
    if(obj.value != 0){
        obj.value = obj.value.replace(/^0*/g,'');
    }else{
        obj.value = obj.value.replace(/^0*/g,'0');
    }
    
    //3,如果第一位是负号-,则可以添加
    if(first_char =='-'){
        obj.value = first_char + obj.value;
    }   

    2,非负整数

    //1,保存第一个字符
    let first_char = obj.value.charAt(0);
    
    //2,只保留数字
    obj.value = obj.value.replace('/[^d]/g','');
    
    //3,如果>0,去掉开头的0
    if(obj.value > 0){
        obj.value = obj.value.replace('/^0/g','');
    }

    3,正整数

    //1,保存第一个字符
    let first_char = obj.value.charAt(0);
    
    //2,只保留数字
    obj.value = obj.value.replace('/[^d]/g','');
    
    //3,去掉开头的0
    obj.value = obj.value.replace('/^0/g','');

    4,浮点型(包含整数)

    //1,保存第一个字符
    let first_char = obj.value.charAt(0);
    
    //2,只保留数字和点
    obj.value = obj.value.replace('/[^d.]/g','');
    
    //3,第一个不能是点
    obj.value = obj.value.replace('/^./g','');
    
    //4,连续的点只保留一个
    obj.value = obj.value.replace('/.{2,}/g','.');
    
    //5,保证点只能出现1次
    obj.value = obj.value.replace('.','$#$').replace(/./g,'').replace('$#$','.');
    
    //6,如果第一位是负号-,则可以添加
    if(first_char =='-'){
        obj.value = first_char + obj.value;
    }       

    5,限制大小

    //在前面1-4的基础上,继续判断
    max = 100.55;
    min = -100.55if(obj.value>max){
    obj.value=max;
    }
    if(obj.value<min){
    obj.value = min;
    }

    6,限制小数点位数,待整理

     

    字符型

    1,限制字符长度

    //10位长度
    let len =10;
    obj.value = obj.value.substring(0,len);
  • 相关阅读:
    打印乘法口诀
    打印三角形
    java语言基础
    java环境配置
    postgresql新建插入存储过程
    postman做自动化
    fiddler抓包篡改数据实例
    log4j常用4个日志级别
    来一个简单点的表单提交
    mapper文件简单格式
  • 原文地址:https://www.cnblogs.com/tkzc2013/p/14701403.html
Copyright © 2020-2023  润新知