正则表达式-JS验证

1、纯数字  onkeyup="value=value.replace(/[^\d]/g,'')"
   1-100之间的整数  var reg = /^((?!0)\d{1,2}|100)$/;  
   1-100 可两位小数  var reg = new RegExp("^(((\\d{1,2})[.]((\\d{1,2})?))|100|(?:0|[1-9][0-9]?)|100.00|100.0)$");  

2、只能输入数字,包含两位小数   金额
function onlyNumber(obj){
    //得到第一个字符是否为负号    
    var t = obj.value.charAt(0);
    //先把非数字的都替换掉,除了数字和.  
    obj.value = obj.value.replace(/[^\d\.]/g,'');
    //前两位不能是0加数字      
    obj.value = obj.value.replace(/^0\d[0-9]*/g,'');
    //必须保证第一个为数字而不是.       
    obj.value = obj.value.replace(/^\./g,'');
    //保证只有出现一个.而没有多个.       
    obj.value = obj.value.replace(/\.{2,}/g,'.');
    //保证.只出现一次,而不能出现两次以上       
    obj.value = obj.value.replace('.','$#$').replace(/\./g,'').replace('$#$','.');
    //如果第一位是负号,则允许添加    
    obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3');
    if(t == '-'){ return; }
}

3、不包含特殊字符
var pname = $("#pname").val();
var regName = /[~#^$@%&!*()<>:;'"{}【】  ]/;
if(pname == '' || pname == null || pname.length > 8 || regName.test(pname) ){
   var errorMsg = "平台名称不能为空,长度不超过8位,不包含特殊字符!";
   alert(errorMsg);      
   return false;
}

4、网址
 var reg = /(http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?/;
            if (!reg.test(website)) {
                alert("请输入正确的网址!");
                return false;
            }

5、验证多组类似元素的值不能为空: 定义相同的name,通过name得到数组值,循环判断
        var background1 = document.getElementsByName("background1");
        for(var j=0;j<background1.length;j++){
            var backgroundValue = background1[j].value;
            if (backgroundValue == 0) {
                alert("请选择平台背景");
                return false;
            }
        }

6、手机号  var reg = /^[1][3,4,5,7,8][0-9]{9}$/;    
   电话    /^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/
   QQ      /^[0-9]{5,10}$/
   中文姓名 /^[\u4E00-\u9FA5\uf900-\ufa2d·s]{2,20}$/

7、验证单选按钮radio是否选中
   <input class="float_l isuser" name="isuser" type="radio" value="1" id="shi" style="display: none;">
   <label class="float_l label_border" name="radio" for="shi">
    <p>是</p>
   </label>
   <input class="float_l isuser" name="isuser" type="radio" value="0" id="fou" style="display: none;">
   <label class="float_l label_border" name="radio" for="fou">
    <p>否</p>
   </label>
    var isuser = $('input:radio[name="isuser"]:checked').val();
    if(isuser == null){
        failPopup("请选择是否为平台人员");
        return false;
    }

8、验证多选框是否选中
   <input name="business" type="checkbox" value="1" class="checkbox"/>
   <label></label>
   <p>个人信贷</p>
   <input name="business" type="checkbox" value="2" class="checkbox"/>
   <label></label>
   <p>企业信贷</p>
            var names = document.getElementsByName("business");            
          var flag = false ;//标记判断是否选中一个                 
            for(var i=0;i<names.length;i++){  
                if(names[i].checked){  
                        flag = true ;  
                        break ;  
                 }  
             }  
             if(!flag){  
                alert("请最少选择一项!");  
                return false ;  
             }           
   全选-全不选-反选:https://zhidao.baidu.com/question/535809072.html?qbl=relate_question_2&word=%D1%E9%D6%A4%B8%B4%D1%A1%BF%F2%CA%C7%B7%F1%D1%A1%D6%D0

9、判断字符串是否包含另一个字符串 
   indexOf()


indexOf() 返回某个指定的字符串值在字符串中首次出现的位置。 

如果要检索的字符串值没有出现,则该方法返回 -1。


var str = "中华人民共和国";

console.info(str.indexOf("人民")!=-1); // true

console.info(str.indexOf("中国人")!=-1); // false

     
search()


search() 用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。 

如果没有找到任何匹配的子串,则返回 -1。


var str = "中华人民共和国";

console.info(str.search("人民")!=-1); // true

console.info(str.search("中国人")!=-1); // false
--------------------- 

其它:
1、BigDecimal相除,不保留小数
   BigDecimal a = new BigDecimal(10000);  // 除数
   if (registration.getPaidcapital() != null){
       // BigDecimal相除,不保留小数
       info.setPaidcapital(((registration.getPaidcapital()).divide(a, 0,        RoundingMode.HALF_UP)).toString());
   }

2、BigDecimal相乘 
   String pmin = ((info.getProfitmin()).multiply(new BigDecimal(100))).toString();
   info.setProfitmin1(pmin.substring(0, pmin.indexOf(".")));

3、网址过滤
if (StringUtil.isNotEmpty(website)) {
            if (website.indexOf("://") != -1) {
                website = website.substring(website.indexOf("://") + 3);
            }
            if (website.indexOf("/") != -1) {
                website = website.substring(0, website.indexOf("/"));
            }
            website = website.split("\\?")[0]; // 过滤多余的参数部分
        }
  网址字符截取
   String link = "http://www.wangdaibus.com/thread-188273-1-1.html"  //获取tid 188273
   link = link.split("-")[1];
   link = link.split("-")[0];

4、隐藏手机号中间4位,用*替换
   mobile.replaceAll("(\\d{3})\\d{4}(\\d{4})", "$1****$2")
 
5、
  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值