首页 > 代码库 > java中的正则表达式实例
java中的正则表达式实例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 | // 正则做参考,拷贝使用,注意正则前后加转义符 var regexEnum = { intege: "^-?[1-9]\d*$" , //整数 intege 1: "^[1-9]\d*$" , //正整数 intege 2: "^-[1-9]\d*$" , //负整数 num: "^([+-]?)\d*\.?\d+$" , //数字 num 1: "^[1-9]\d*|0$" , //正数(正整数 + 0 ) num 2: "^-[1-9]\d*|0$" , //负数(负整数 + 0 ) decmal: "^([+-]?)\d*\.\d+$" , //浮点数 decmal 1: "^[1-9]\d*.\d*|0.\d*[1-9]\d*$" , //正浮点数 decmal 2: "^-([1-9]\d*.\d*|0.\d*[1-9]\d*)$" , //负浮点数 decmal 3: "^-?([1-9]\d*.\d*|0.\d*[1-9]\d*|0?.0+|0)$" , //浮点数 decmal 4: "^[1-9]\d*.\d*|0.\d*[1-9]\d*|0?.0+|0$" , //非负浮点数(正浮点数 + 0 ) decmal 5: "^(-([1-9]\d*.\d*|0.\d*[1-9]\d*))|0?.0+|0$" , //非正浮点数(负浮点数 + 0 ) email: "^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$" , //邮件 color : "^[a-fA-F0-9]{6}$" , //颜色 url: "^http[s]?:\/\/([\w-]+\.)+[\w-]+([\w-./?%&=]*)?$" , // url chinese: "^[\u4E00-\u9FA5\uF900-\uFA2D]+$" , //仅中文 ascii: "^[\x00-\xFF]+$" , //仅ACSII字符 zipcode: "^\d{6}$" , //邮编 mobile: "^(13|15|18|14)[0-9]{9}$" , //手机 ip 4: "^(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)$" , //ip地址 notempty: "^\S+$" , //非空 picture: "(.*)\.(jpg|bmp|gif|ico|pcx|jpeg|tif|png|raw|tga)$" , //图片 rar: "(.*)\.(rar|zip|7zip|tgz)$" , //压缩文件 date: "^\d{4}(\-|\/|\.)\d{1,2}\1\d{1,2}$" , //日期 qq: "^[1-9]*[1-9][0-9]*$" , //QQ号码 tel: "^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$" , //电话号码的函数(包括验证国内区号,国际区号,分机号) username: "^\w+$" , //用来用户注册。匹配由数字、 26 个英文字母或者下划线组成的字符串 letter: "^[A-Za-z]+$" , //字母 letter_u: "^[A-Z]+$" , //大写字母 letter_l: "^[a-z]+$" , //小写字母 idcard: "^[1-9]([0-9]{14}|[0-9]{17})$" , //身份证 english: "^[A-Za-z]+$" } var aCity={ 11: "北京" , 12: "天津" , 13: "河北" , 14: "山西" , 15: "内蒙古" , 21: "辽宁" , 22: "吉林" , 23: "黑龙江" , 31: "上海" , 32: "江苏" , 33: "浙江" , 34: "安徽" , 35: "福建" , 36: "江西" , 37: "山东" , 41: "河南" , 42: "湖北" , 43: "湖南" , 44: "广东" , 45: "广西" , 46: "海南" , 50: "重庆" , 51: "四川" , 52: "贵州" , 53: "云南" , 54: "西藏" , 61: "陕西" , 62: "甘肃" , 63: "青海" , 64: "宁夏" , 65: "新疆" , 71: "台湾" , 81: "香港" , 82: "澳门" , 91: "国外" } function isCardID(sId){ var iSum= 0 ; var info= "" ; if(!/^\d{ 17 }(\d|x)$/i.test(sId)) return "你输入的身份证长度或格式错误" ; sId=sId.replace(/x$/i, "a" ); if(aCity[parseInt(sId.substr( 0 , 2 ))]==null) return "你的身份证地区非法" ; sBirthday=sId.substr( 6 , 4 )+ "-" +Number(sId.substr( 10 , 2 ))+ "-" +Number(sId.substr( 12 , 2 )); var d=new Date(sBirthday.replace(/-/g, "/" )) ; if(sBirthday!=(d.getFullYear()+ "-" + (d.getMonth()+ 1 ) + "-" + d.getDate()))return "身份证上的出生日期非法" ; for(var i = 17 ;i>= 0 ;i --) iSum += (Math.pow( 2 ,i) % 11 ) * parseInt(sId.charAt( 17 - i), 11 ) ; if(iSum% 11 != 1 ) return "你输入的身份证号非法" ; return true;//aCity[parseInt(sId.substr( 0 , 2 ))]+ "," +sBirthday+ "," +(sId.substr( 16 , 1 )% 2 ? "男" : "女" ) } //自定义验证 $.extend($.fn.validatebox.defaults.rules, { // 混合验证 五个参数,第一个是正则表达式,第二个是错误提示信息,第三个是调用的 url ,第四个是传递给服务器的参数名称,第五个是错误提示信息 Composite_validation: { validator: function(value, param) { var m_reg = new RegExp(param[ 0 ]); //传递过来的正则字符串中的 "\"必须是" \\" if (!m_reg.test(value)) { $.fn.validatebox.defaults.rules.Composite_validation.message = param[ 1 ]; return false; } else { var postdata = http://www.mamicode.com/{}; postdata[param[ 3 ]] = value; var result = $.ajax({ url: param[ 2 ], data: postdata, async: false, type: "post" }).responseText; if (result == "false" ) { $.fn.validatebox.defaults.rules.Composite_validation.message = param[ 4 ]; return false; } else { return true; } } }, message: ‘‘ }, equalTo: { validator: function(value, param) { // 做某些检查 return value =http://www.mamicode.com/= $( ‘#‘ +param[ 0 ]).val(); }, message: ‘两次输入的密码不一致‘ }, mobile: { validator: function (value, param) { return /^( 13 | 15 | 18 | 14 )[ 0 -9 ]{ 9 }$/.test(value); }, message: ‘手机号码不正确‘ }, tel: { validator: function (value, param) { $.fn.validatebox.defaults.rules.tel.message = param[ 0 ]; return /^\d{ 3 , 4 }-\d{ 7 , 9 }$/.test(value); }, message: ‘‘ }, number: { validator: function (value, param) { return /^\d+$/.test(value); }, message: ‘请输入数字‘ }, idcard: { validator: function (value, param) { var result = isCardID(value); if(result == true) { return true; } else { $.fn.validatebox.defaults.rules.idcard.message = result; return false; } }, message: ‘‘ }, chinese: { validator: function(value, param) { return /^[\u 4 E 00 -\u 9 FA 5 \uF 900 -\uFA 2 D]+$/.test(value); }, message: ‘只能输入中文‘ }, english : { validator : function(value, param) { return /^\w+$/.test(value); }, message : ‘只能输入英文‘ }, unChinese : { validator : function(value, param) { //return /^[\w-.\/?%&=]*$/.test(value); if(/^[\u 4 E 00 -\u 9 FA 5 \uF 900 -\uFA 2 D]+$/.test(value)) { return false; } return true; }, message : ‘能输入除中文以外的字符‘ } }); |
java中的正则表达式实例
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。