常用验证正则表达式

1.不能输入中文字符
                if ($("#Io_Co_Linkphone").val() != "") {
                    if (/[\u4E00-\u9FA5]/i.test($("#Io_Co_Linkphone").val())) {
                        alert("电话号码不能输入中文字符!");
                        $("#Io_Co_Linkphone").focus();
                        return false;
                    }
                }

2.只能填写数字:带闪烁的
onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^0-9\.]/gi,''))" 
onkeyup="value=value.replace(/[^0-9\.]/gi,'')" <asp:textbox id="TextBox1" onkeyup="if(isNaN(value))execCommand('undo')" runat="server" Width="80px" onafterpaste="if(isNaN(value))execCommand('undo')"></asp:textbox> 在.net开发中,为了确保数据的正确性,经常要用户输入的内容进行验证,比喻说只能输入数字。 首先在TextBox控件中加一个属性事件: <asp:textbox class="Text" onkeypress="if (event.keyCode < 48 || event.keyCode >57) event.returnValue = false;" id="txtY_Revenue" style="TEXT-ALIGN: right" runat="server" Width="90%" MaxLength="12"></asp:textbox> 键盘按下去时检查按下的是不是0-9,如果不是的话,不将当前的输入放入文本框中 说明: 此方法控制TextBox只输入数字:0~9,提供一种思路 补充: 1.取消按钮按下时的虚线框 在input里添加属性值 hideFocus 或者 HideFocus=true 2.只读文本框内容 在input里添加属性值 readonly 3.防止退后清空的TEXT文档(可把style内容做做为类引用) <INPUT style=behavior:url(#default#savehistory); type=text id=oPersistInput> 4.ENTER键可以让光标移到下一个输入框 <input onkeydown="if(event.keyCode==13)event.keyCode=9" > 5.只能为中文(有闪动) <input onkeyup="value=value.replace(/[ -~]/g,'')" onkeydown="if(event.keyCode==13)event.keyCode=9">利用Ascii码的范围进行判断 6.只能为数字(有闪动) <input onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text')
.replace(/[^\d]/g,''))">
利用Ascii码的范围进行判断 7.只能为数字(无闪动) <input style="ime-mode:disabled" onkeydown="if(event.keyCode==13)event.keyCode=9" onKeyPress="if ((event.keyCode<48 || event.keyCode>57))
event.returnValue=false">
利用Ascii码的范围进行判断 8.只能输入英文和数字(有闪动) <input onkeyup="value=value.replace(/[\W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text')
.replace(/[^\d]/g,''))">
利用js的正则表达式进行验证 9.屏蔽输入法 <input type="text" name="url" style="ime-mode:disabled" onkeydown="if(event.keyCode==13)event.keyCode=9"> 10. 只能输入 数字,小数点,减号(-) 字符(无闪动) <input onKeyPress="if (event.keyCode!=46 && event.keyCode!=45 && (event.keyCode<48 || event.keyCode>57)) event.returnValue=false">
利用Ascii码的范围进行判断 11. 只能输入两位小数,三位小数(有闪动) <input maxlength=9 onkeyup="if(value.match(/^\d{3}$/))value=value.replace(value,parseInt(value/10)) ;value=value.replace(/\.\d*\./g,'.')"
onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 && event.keyCode!=45 || value.match(/^\d{3}$/) || /\.\d{3}$/
.test(value)) {event.returnValue=false}" id=text_kfxe name=text_kfxe> 利用js的正则表达式进行验证。 用正则表达式: if(System.Text.RegularExpressions.Regex.IsMatch(inputTextBox.Text.Trim(), "^-?\d+$ ")) { ......//你的代码 } <asp:textbox id= "txtSize1 " onblur= "if(!/^[0-9]+$/.test(this.value)){alert( 'INVALD NUMBER! ');this.focus();this.value=0;} tabIndex= "2 " Runat= "server " Width= "33px "> 0 </asp:textbox> javascript或者ASP.NET实现文本框的字符数限制输入 <script language="JavaScript"> function checkform(){ if(document.form1.remark.value.length <0 || document.form1.remark.value.length > 100){ alert("长度应为0-100个字符,请重新输入!"); document.form1.remark.focus(); return false; } } </script> <form name=form1 method="post" action="fuck.php" onSubmit="return checkform()"> </form>
<asp:regularexpressionvalidator id="RegularExpressionValidator2" runat="server" ErrorMessage="请在有效数值内输入" Display="Dynamic" ControlToValidate="验证控件的ID" ValidationExpression="正则表达式"></asp:regularexpressionvalidator> 常用的正则表达式 只能输入数字:“^[0-9]*$” 只能输入n位的数字:“^/d{n}$” 只能输入至少n位数字:“^/d{n,}$” 只能输入m-n位的数字:“^/d{m,n}$” 只能输入零和非零开头的数字:“^(0|[1-9][0-9]*)$” 只能输入有两位小数的正实数:“^[0-9]+(.[0-9]{2})?$” 只能输入有1-3位小数的正实数:“^[0-9]+(.[0-9]{1,3})?$” 只能输入非零的正整数:“^/+?[1-9][0-9]*$” 只能输入非零的负整数:“^/-[1-9][0-9]*$” 只能输入长度为3的字符:“^.{3}$” 只能输入由26个英文字母组成的字符串:“^[A-Za-z]+$” 只能输入由26个大写英文字母组成的字符串:“^[A-Z]+$” 只能输入由26个小写英文字母组成的字符串:“^[a-z]+$” 只能输入由数字和26个英文字母组成的字符串:“^[A-Za-z0-9]+$” 只能输入由数字、26个英文字母或者下划线组成的字符串:“^/w+$” 验证用户密码:“^[a-zA-Z]/w{5,17}$”正确格式为:以字母开头,长度在6-18之间, 只能包含字符、数字和下划线。 验证是否含有^%&',;=?$/"等字符:“[^%&',;=?$/x22]+” 只能输入汉字:“^[/u4e00-/u9fa5],{0,}$” 验证Email地址:“^/w+[-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*$” 验证InternetURL:“^http://([/w-]+/.)+[/w-]+(/[/w-./?%&=]*)?$” 验证电话号码:“^(/(/d{3,4}/)|/d{3,4}-)?/d{7,8}$” 正确格式为:“XXXX-XXXXXXX”,“XXXX-XXXXXXXX”,“XXX-XXXXXXX”, “XXX-XXXXXXXX”,“XXXXXXX”,“XXXXXXXX”。 验证身份证号(15位或18位数字):“^/d{15}|/d{}18$” 验证一年的12个月:“^(0?[1-9]|1[0-2])$”正确格式为:“01”-“09”和“1”“12” 验证一个月的31天:“^((0?[1-9])|((1|2)[0-9])|30|31)$” 正确格式为:“01”“09”和“1”“31”。 用正则表达式限制文本框只能输入数字,小数点,英文字母,汉字等各类代码 1.文本框只能输入数字代码(小数点也不能输入) <input onkeyup="this.value=this.value.replace(//D/g,'')" onafterpaste="this.value=this.value.replace(//D/g,'')"> 2.只能输入数字,能输小数点. <input onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')"> <input name=txt1 onchange="if(//D/.test(this.value)){alert('只能输入数字');this.value='';}"> 3.数字和小数点方法二 <input type=text t_value="" o_value="" onkeypress="if(!this.value.match(/^[/+/-]?/d*?/.?/d*?$/))this.value=this.t_value;
else this.t_value=this.value;if(this.value.match(/^(?:[/+/-]?/d+(?:/./d+)?)?$/))this.o_value=this.value"
onkeyup="if(!this.value.match(/^[/+/-]?/d*?/.?/d*?$/))this.value=this.t_value;else this.t_value=this.value;
if(this.value.match(/^(?:[/+/-]?/d+(?:/./d+)?)?$/))this.o_value=this.value"
onblur="if(!this.value.match(/^(?:[/+/-]?/d+(?:/./d+)?|/./d*?)?$/))this.value=this.o_value;
else{if(this.value.match(/^/./d+$/))this.value=0+this.value;if(this.value.match(/^/.$/))this.value=0;this.o_value=this.value}"> 4.只能输入字母和汉字 <input onkeyup="value=value.replace(/[/d]/g,'') "
onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[/d]/g,''))" maxlength=10 name="Numbers"> 5.只能输入英文字母和数字,不能输入中文 <input onkeyup="value=value.replace(/[^/w/.//]/ig,'')"> 6.只能输入数字和英文<font color="Red">chun</font> <input onKeyUp="value=value.replace(/[^/d|chun]/g,'')"> 7.小数点后只能有最多两位(数字,中文都可输入),不能输入字母和运算符号: <input onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || //./d/d$/.test(value))event.returnValue=false"> 8.小数点后只能有最多两位(数字,字母,中文都可输入),可以输入运算符号: <input onkeyup="this.value=this.value.replace(/^(/-)*(/d+)/.(/d/d).*$/,'$1$2.$3')"> JS 表单验证文本框输入中英字符验证 表单需要验证用户名输入只能为英文字符与数字不能添加中文字符,所以我们需要方法能区分中英文字符,当前有两种区分中英文字符的方法: 分别是利用正则和charCodeAt方法. 下面分别详解两种 JS 表单验证文本框输入中英字符验证方法:
1、正则无疑是最强大的判断各种条件的方法, 最近也在研习它, 虽然枯燥, 但仍有乐趣. 用它来判断一个双字节的中文字符也是轻而易举地. 而判断中文字符,, 简单且执行效率高. 核心代码如下: regExpForm.onblur=function(){ entryVal=this.value; entryLen=entryVal.length; cnChar=entryVal.match(/[^\x00-\x80]/g);//利用match方法检索出中文字符并返回一个存放中文的数组 if(cnChar!=null){ entryLen+=cnChar.length;//算出实际的字符长度 } } 2、第二种方法是通过charCodeAt()方法判断Unicode码值, 若大于255即为中文字符(为什么? 请Google). 并不建议用这种方法的, 它的执行效率没有正则高, 也没有正则简单. entryVal=this.value; entryLen=entryVal.length; for(var i=0;i<entryVal.length;i++){ if(entryVal.charCodeAt(i)>255){//遍历判断字符串中每个字符的Unicode码,大于255则为中文 cnArr.push(entryVal[i]);//讲符合条件的值插入到中文字符数组中 //注意一个小bug,push是向数组的末尾添加一个或多个元素并返回新的长度,所以未刷新的情况下反复blur会累加字符值 } }

 

posted @ 2015-07-17 15:08  人生只若初见  阅读(369)  评论(0编辑  收藏  举报