正则表达式 admin 2023-09-18 11:09:02 篇首语:本文由小编为大家整理,主要介绍了正则表达式相关的知识,希望对你有一定的参考价值。 1、经纬度//动态校验经纬坐标输入var oldLng=$("#lng").val();var oldLat=$("#lat").val();var lngRe=/^[-]?(d|([1-9]d)|(1[0-7]d)|(180))(.d*)?$/g;var latRe=/^[-]?(d|([1-8]d)|(90))(.d*)?$/g;$("#lng,#lat").on("input change propertychange",function(){ if(this.value.match(this.id=="lng"?lngRe:latRe)==null){ this.value=(this.id=="lng"?oldLng:oldLat);//输入非法,则恢复上次正确数据 }else{//保留上次正确数据 (this.id=="lng" ? oldLng = this.value : oldLat = this.value); }});正则表达式分析:经度坐标范围为 -180 ~ 180 ,而纬度坐标范围为 -90 ~ 90 ,以经度为例,表达式可作如下拆分:0-9,10-99,100-179,180,这样对应的表达式可分别写为 d,[1-9]d,1[0-7]d,(180),对他们进行“或”(|)运算,再考虑小数((.d*)?)以及负数(-),最后的正则表达式成为了这样: /^[-]?(d|([1-9]d)|(1[0-7]d)|(180))(.d*)?$/g同理,纬度的正则表达式就不难了(拆分步骤略,可参考经度): /^[-]?(d|([1-8]d)|(90))(.d*)?$/g2、IP(d|[1-9]d|1d{2}|2[0-4]d|25[0-5].){3}(d|[1-9]d|1d{2}|2[0-4]d|25[0-5])3、身份证//身份证正则表达式(15位) isIDCard1=/^[1-9]d{7}((0d)|(1[0-2]))(([0|1|2]d)|3[0-1])d{3}$/; //身份证正则表达式(18位) isIDCard2=/^[1-9]d{5}[1-9]d{3}((0d)|(1[0-2]))(([0|1|2]d)|3[0-1])d{3}([0-9]|X)$/;4、手机号/^1[3|4|5|7|8]d{9}$/5、邮箱/^[a-zA-Z0-9_-][email protected][a-zA-Z0-9_-]+(.[a-zA-Z0-9_-]+)+$/ 以上是关于正则表达式的主要内容,如果未能解决你的问题,请参考以下文章 怎么让域名解析到指定的端口 无人驾驶(三)行人跟踪算法 您可能还会对下面的文章感兴趣: 相关文章 浏览器打不开网址提示“ERR_CONNECTION_TIMED_OUT”错误代码的解决方法 如何安装ocx控件 VMware的虚拟机为啥ip地址老是自动变化 vbyone和EDP区别 linux/debian到底怎么重启和关机 苹果平板键盘被弄到上方去了,如何调回正常? 机器学习常用距离度量 如何查看kindle型号