常用正则表达式和JS控制输入框输入限制(数字、汉字、字符)

一、常用正则表达式

(1)验证数字:^[0-9]*$
(2)验证n位的数字:^\d{n}$
(3)验证至少n位数字:^\d{n,}$
(4)验证m-n位的数字:^\d{m,n}$
(5)验证零和非零开头的数字:^(0|[1-9][0-9]*)$
(6)验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$
(7)验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$
(8)验证非零的正整数:^\+?[1-9][0-9]*$
(9)验证非零的负整数:^\-[1-9][0-9]*$
(10)验证非负整数(正整数 + 0) ^\d+$
(11)验证非正整数(负整数 + 0) ^((-\d+)|(0+))$
(12)验证长度为3的字符:^.{3}$
(13)验证由26个英文字母组成的字符串:^[A-Za-z]+$
(14)验证由26个大写英文字母组成的字符串:^[A-Z]+$
(15)验证由26个小写英文字母组成的字符串:^[a-z]+$
(16)验证由数字和26个英文字母组成的字符串:^[A-Za-z0-9]+$
(17)验证由数字、26个英文字母或者下划线组成的字符串:^\w+$
(18)验证用户密码:^[a-zA-Z]\w{5,17}$ 正确格式为:以字母开头,长度在6-18之间,

           只能包含字符、数字和下划线。
(19)验证是否含有 ^%&',;=?$\" 等字符:[^%&',;=?$\x22]+
(20)验证汉字:^[\u4e00-\u9fa5],{0,}$
(21)验证Email地址:^\w+[-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
(22)验证InternetURL:^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$ ;^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$
(23)验证电话号码:^(\(\d{3,4}\)|\d{3,4}-)?\d{7,8}$:--正确格式为:XXXX-XXXXXXX,

           XXXX-XXXXXXXX,XXX-XXXXXXX,XXX-XXXXXXXX,XXXXXXX,XXXXXXXX。

(24)验证身份证号(15位或18位数字):^\d{15}|\d{}18$
(25)验证一年的12个月:^(0?[1-9]|1[0-2])$ 正确格式为:“01”-“09”和“1”“12”
(26)验证一个月的31天:^((0?[1-9])|((1|2)[0-9])|30|31)$ 正确格式为:01、09和1、31。
(27)整数:^-?\d+$
(28)非负浮点数(正浮点数 + 0):^\d+(\.\d+)?$
(29)正浮点数 ^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$
(30)非正浮点数(负浮点数 + 0) ^((-\d+(\.\d+)?)|(0+(\.0+)?))$
(31)负浮点数 ^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$
(32)浮点数 ^(-?\d+)(\.\d+)?$

二、用JS控制输入框input数字、汉字、字符 

(1)文本框只能输入数字代码(小数点也不能输入)

<input οnkeyup="this.value=this.value.replace(/\D/g,'')" 

onafterpaste="this.value=this.value.replace(/\D/g,'')">

(2)只能输入数字,能输小数点

<input οnkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))

execCommand('undo')">
<input name=txt1 οnchange="if(/\D/.test(this.value)){alert('只能输入数字');this.value='';}">

(3)只能输入字母和汉字

<input οnkeyup="value=value.replace(/[\d]/g,'') "onbeforepaste="clipboardData.setData

('text',clipboardData.getData('text').replace(/[\d]/g,''))" maxlength=10 name="Numbers">

(4)只能输入英文字母和数字,不能输入中文

<input οnkeyup="value=value.replace(/[^\w\.\/]/ig,'')">

(5)小数点后只能有最多两位(数字,中文都可输入),不能输入字母和运算符号

<input onKeyPress="if((event.keyCode<48 || event.keyCode>57) && 

event.keyCode!=46 || /\.\d\d$/.test(value))event.returnValue=false">

(6)小数点后只能有最多两位(数字,字母,中文都可输入),可以输入运算符号

<input οnkeyup="this.value=this.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')">

(7)只能是数字和小数点和加减乘除

οnkeypress="return event.keyCode>=4&&event.keyCode<=57"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值