`
nmskate
  • 浏览: 126413 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论

正则表达式,javascript表单验证函数

阅读更多

一部分转自:http://www.cnblogs.com/hongten/archive/2011/03/21/1990121.html

一部分其他地方自己收集

 

这里所有的javascript函数都经过实际测试。

 


索引:

1.  验证radio 是否选择

2.  检测输入长度限制

3.  3.1.1 键盘能输入只能是数字

3.1.2 键盘能输入只能是数字

3.2. 键盘不能输入数字

4.  4.1 验证邮箱格式

4.2 验证邮箱格式

5.  屏蔽关键字( 这里屏蔽*******)

6.  中文/ 英文/ 数位/ 合法性判断

7.  7.1 检查一段字串是否全由数位组成

7.2 检查一段字串是否全由数位组成 

8.  判断是否全是字元

9.  判断是否含有汉字

10. 判断输入是否为中文的函数

11. 11.1 判断用户名是否为数位字母下滑线  

11.2 判断字符串是否为数值

12. 12.1 检查电话号码

12.2 检查电话号码

13. 验证email, 返回true & false

14. 检查是否为有效的真实姓名,只能含有中文或大写的英文字母

15. 快速比较两个字符串的不同字符

16. 检查年龄是否符合

17. 检查密码只允许由ascii 组成

18. 检查输入值是否符合整数格式

19. 检查输入字符串是否为空或者全部都是空格

20. 校验IP 地址的格式

 

 

1. 验证 radio 是否选择

         <script type="text/javascript ">

                   function isRadioSelected(obj )

                   {

                            for (var i = 0; i < obj.oo.length; i ++)

                            {

                                     if(obj.oo[i].checked == true)

                                     {

                                               return true;

                                     }

                            }

                            alert(" 请选择 ");

                            return false;

                   }

         </script>

        

         <form id="form1" name="form1" method="post" action="#" onsubmit ="return isRadioSelected(this);">

                   <input type="radio" name="oo " value="radiobutton " />

                   <input type="radio" name="oo " value="radiobutton " />

                   <input type="submit" name="Submit" value=" 提交 " />

         </form>

 

2. 检测输入长度限制

         <script type="text/javascript ">

                   function checkValueLength()

                   {

                            if(document.a.b.value.length > 50)

                            {

                                     alert(" 不能超过 50 个字元! ");

                                     document.a.b.focus();

                                     return false;

                            }

                   }

         </script>

         <form name="a" onsubmit ="return checkValueLength();">

                   <textarea name="b" cols ="40" rows="6"></textarea>

                   <input type="submit" name="Submit" />

         </form>

 

3.1.1 键盘能输入只能是数字

         <script type="text/javascript ">

                   function onlyNumbers(e)

                   {

                            var keynum ;

                            var keychar ;

                            var numcheck ;

        

                            if(window.event) // IE

                            {

                                     keynum = e.keyCode;

                            }

                            else if(e.which) // Netscape /Firefox /Opera

                            {

                                     keynum = e.which;

                            }

                            keychar = String.fromCharCode(keynum );

                            numcheck = /\d/;  // \d 代表数字 0-9

                            return numcheck.test(keychar );

                   }

         </script>

        

         <input type="text" onkeypress ="return onlyNumbers(event);" />

 

3.1.2 键盘能输入只能是数字

         <script type="text/javascript ">

                   function check(obj ) {

                            if(event.keyCode == 13 || event.keyCode == 46) {

                                     return true;

                            }

                            if(event.keyCode < 48 || event.keyCode >57) {

                                     return false;

                            } else {

                                     return true;

                            }

                   }

         </script>

        

         <input type="text" name="textfield " onkeypress ="javascript:return check(this);" />

        

3.2. 键盘不能输入数字

         <script type="text/javascript ">

                   function noNumbers(e)

                   {

                            var keynum ;

                            var keychar ;

                            var numcheck ;

        

                            if(window.event) // IE

                            {

                                     keynum = e.keyCode;

                            }

                            else if(e.which) // Netscape /Firefox /Opera

                            {

                                     keynum = e.which;

                            }

                            keychar = String.fromCharCode(keynum );

                            numcheck = /\d/;

                            return !numcheck.test(keychar );

                   }

         </script>

        

         <input type="text" onkeypress ="return noNumbers(event);" />

 

4.1 验证邮箱格式

         <script type="text/javascript ">

         function isEmail(strEmail) {

                   if (strEmail.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za -z0-9]+((\.|-)[A-Za -z0-9]+)*\.[A-Za -z0-9]+$/)!= -1) {

                            return true;

                   } else {

                            alert(" 格式错误 ");

                   }

         }

         </script>

        

         <input type="text" onblur ="isEmail(this.value)" />

        

4.2 验证邮箱格式

         <script type="text/javascript ">

                   function emailCheck(emailStr) {

                            var emailPat=/^(.+)@(.+)$/;

                            var matchArray=emailStr.match(emailPat);

                            if (matchArray==null) {

                                     alert(" 电子邮件地址必须包括 ( @ . )");

                                     return false;

                            }

                            return true;

                   }

         </script>

         <input type="button" name="Submit" value="check" onclick ="emailCheck('123456789@qq.com ');" />

 

5.  屏蔽关键字 ( 这里屏蔽 *** ****)

         <script type="text/javascript ">

         function test() {

                   // 这里测试是否包含 "***","****"

                   if((a.b.value.indexOf ("***") == 0)||(a.b.value.indexOf("****") == 0)){

                            alert(" 包含字符串 ");

                            a.b.focus();

                            return false;

                   }

         }

         </script>

        

         <input type="text" name="b" />

         <input type="button" name="Submit" value="check" onclick ="test();" />

 

6. 中文 / 英文 / 数位 / 合法性判断

         <script type="text/javascript ">

                   function isEnglish(str )      // 英文值检测

                   {

                            if(str.length == 0) return false;

                            for(var i = 0; i < str.length; i ++)

                            {

                                     if(str.charCodeAt(i) > 128)

                                     {

                                               return false;

                                     }

                            }

                            return true;

                   }

        

                   function isChinese(str )      // 中文值检测

                   {

                            if(str.length  == 0) return false;

                            for(var i = 0; i < str.length; i++)

                            {

                                     if(str.charCodeAt(i) <= 128)

                                     {

                                               return false;

                                     }

                            }

                            return true;

                   }

                   function isNumber(str )      // 数值检测

                   { 

                            if(str.length == 0) return false;

                            for(var i = 0; i < str.length; i++)

                            { 

                                     if(str.charAt(i) < "0" || str.charAt(i) > "9")

                                     {

                                               return false;

                                     }

                            }

                            return true;

                   }

         </script>

        

         <input type="button" name="Submit" value="check" onclick ="isChinese(' 测试 ');" />

 

7.1 检查一段字串是否全由数位组成      

         <script type="text/javascript ">         

                   function checkNum(str ) {

                            return str.match(/\D/) == null;

                   }

                   alert(checkNum("1232142141"));

                   alert(checkNum("123214214a1"));

         </script>

        

7.2 检查一段字串是否全由数位组成      

         <script type="text/javascript ">

                   function isNumber(oNum) {

                            if(!oNum) return false;

                            var strP=/^\d+(\.\d+)?$/;

                            if(!strP.test(oNum)) return false;

                            try{

                                     if(parseFloat(oNum) != oNum) return false;

                            } catch (ex ) {

                                     return false;

                            }

                            return true;

                   }

         </script>

         <input type="button" value=" 按钮 " onclick ="isNumber('3223a2');"></input>

 

8. 判断是否全是字元

         <script type="text/javascript ">         

         function checkAllChar(str ) {

                   if (/[^\x00-\xff ]/g.test(str )) {

                            alert(" 含有汉字 ");

                   } else {

                            alert(" 全是字元 ");

                   }

         }

         </script>

        

         <input type="button" name="Submit" value="check" onclick ="checkAllChar('faafdfdsa2431243fda');" />

 

9. 判断是否含有汉字

         <script type="text/javascript ">         

                   function checkHasChn(str ) {

                            if (escape(str ).indexOf("%u") != -1) {

                                     alert(" 含有汉字 ");

                            } else {

                                     alert(" 全是字元 ");

                            }

                   }

         </script>

        

         <input type="button" name="Submit" value="check" onclick ="checkHasChn('faafdfdsa 汉字 2431243fda');" />

 

10. 判断输入是否为中文的函数   

         <script type="text/javascript ">         

                   function ischinese (s) {

                            var re t= true;

                            for(var i=0;i<s.length;i++)

                            {

                                     ret = ret && (s.charCodeAt(i)>=10000);

                            }

                            return ret ;

                   }

         </script>

        

         <input type="button" name="Submit" value="check" onclick ="ischinese (' 汉字 ');" />

 

11.1 判断用户名是否为数位字母下滑线   

         <script type="text/javascript ">         

                   function checkUserName(str ) {

                            var reg = /[^A-Za -z0-9_]/g;

                            if (reg.test(str )) {

                                     return false;

                            } else {

                                     return true;

                            }

                   }

         </script>

        

         <input type="button" name="Submit" value="check" onclick ="checkUserName('fdafdafdasfa_s');" />

 

11.2 判断字符串是否为数值

         <script type="text/javascript">

                   function regIsNumber(fData)

                   {

                       var reg = new RegExp("^[-]?[0-9]+[\.]?[0-9]+$");

                       return reg.test(fData);

                   }

         </script>

        

         <input type="button" value=" 测试 " onclick="regIsNumber('2323.00');" />

 

12.1 检查电话号码

         <script type="text/javascript">         

                   function isTel(str) {

                       var reg=/^([0-9]|[\-])+$/g ;

                       if(str.length < 7 || str.length > 18) {

                                return false;

                       } else {

                                return reg.exec(str);

                       }

                   }

         </script>

        

         <input type="button" name="Submit" value="check" onclick="isTel('11111111111');" />

12.2 检查电话号码

         <script type="text/javascript">

         function regIsPhone(fData)

         {

                   var reg = /^(\+86)?(1[0-9]{10})$/;

                   return reg.test(fData);

         }

         </script>

        

         <input type="button" value=" 测试 " onclick="regIsPhone('11111111111');" />

 

13. 验证 email, 返回 true & false

         <script type="text/javascript">          

                   function isEmail(str) {

                       var reg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/;

                       return reg.test(str);

                   }

         </script>

        

         <input type="button" name="Submit" value="check" onclick="isEmail('111111111@.com');" />

 

14. 检查是否为有效的真实姓名,只能含有中文或大写的英文字母

         <script type="text/javascript">         

                   function isEmail(str) {

                       var reg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/;

                       return reg.test(str);

                   }

         </script>

        

         <input type="button" name="Submit" value="check" onclick="isEmail('111111111@.com');" />

 

15. 快速比较两个字符串的不同字符

         <script type="text/javascript">

                   function compareStrs(str1, str2) {

                            var re = new RegExp("(?=.*?)[^" + str1 +"](?=.*?)|(?=.*?)[^" + str2 + "](?=.*?)", "g");

                            var arr;

                            while ((arr = re.exec(str1 + str2)) != null)

                            {

                                     document.write(arr);

                            }

                   }

         </script>

        

         <input type="button" name="Submit" value="check" onclick="compareStrs('abc 字符串 ', 'abe fg');" />

 

16. 检查年龄是否符合

         <script type="text/javascript">

                   function isAge(str){

                            var mydate = new Date();

                            var now = mydate.getFullYear();

                            if (str < now - 60 || str > now - 18) {

                                     alert("false");

                                     return false;

                       }

                            alert("true");

                            return true;

                   }

         </script>

        

         <input type="button" name="Submit" value="check" onclick="isAge('1990');" />

 

17. 检查密码只允许由 ascii 组成

         <script type="text/javascript">

                   function checkValidPasswd(str) {

                            var reg = /^[x00-x7f]+$/;

                            if (! reg.test(str)) {

                                     return false;

                            }

                            if (str.length < 6 || str.length > 16) {

                        return false;

                            }

                            return true;

                   }

         </script>

        

         <input type="button" name="Submit" value="check" onclick="checkValidPasswd('19fda90');" />

 

18. 检查输入值是否符合整数格式

         <script type="text/javascript">

                   function isInteger(str) {

                            var regu = /^[-]{0,1}[0-9]{1,}$/;

                            return regu.test(str);

                   }

         </script>

         <input type="button" name="Submit" value="check" onclick="isInteger('1990');" />

 

19. 检查输入字符串是否为空或者全部都是空格

         <script type="text/javascript">

                   function isNull(str){

                            if (str == "") return true;

                            var regu = "^[ ]+$";

                            var re = new RegExp(regu);

                            alert(re.test(str));

                            return re.test(str);

                   }

         </script>

         <input type="button" name="Submit" value="check" onclick="isNull('   ');" />

 

20. 校验 IP 地址的格式

         <script type="text/javascript">

                   function isIP(strIP) {

                            if (strIP.length == 0)

                            {

                                     return false;

                            }

                            var re = /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/g;

                            if(re.test(strIP))

                            {

                                     if( RegExp.$1 <256 && RegExp.$2<256 && RegExp.$3<256 && RegExp.$4<256)

                                     {

                                               return true;

                                     }

                            }

                            return false;

                   }

         </script>

        

         <input type="button" name="Submit" value="check" onclick="isIP('127.0.0.1');" />

分享到:
评论

相关推荐

    javascript&正则表达式进行表单验证

    除了基本的正则表达式操作,还可以结合其他JavaScript函数进行更复杂的验证,如`trim()`去除空白,`length`检查长度,`indexOf()`检测子字符串等。 在实际项目中,还可以利用jQuery或其他库如React、Vue等提供的...

    javascript正则表达式表单验证大全

    ### JavaScript正则表达式在表单验证中的应用详解 在Web开发中,表单验证是确保数据质量和用户体验的重要环节。JavaScript正则表达式提供了一种强大的工具,用于前端数据校验,确保用户输入的数据格式正确无误。...

    使用正则表达式验证一年的12个月份

    正则表达式是一种强大的文本处理工具,用于匹配、查找、替换等操作,广泛应用于编程语言中。在IT行业中,正则表达式...无论是在网页表单验证、服务器端数据处理还是数据分析场景,正则表达式都是一个强大而灵活的工具。

    正则表达式验证表单

    下面将根据提供的代码示例,详细介绍如何使用JavaScript中的正则表达式来实现常见表单字段的有效性验证。 #### IP地址验证 IP地址是一种用于标识互联网上主机的标准格式。IPv4地址通常由四个0到255之间的数字组成...

    常用正则表达式基本表单验证

    以上正则表达式和JavaScript代码段覆盖了表单验证中的许多常见需求,能够帮助开发者高效地实现数据校验,确保用户输入的数据符合预期的格式和范围。在实际开发中,应根据具体的应用场景灵活选择和调整这些表达式,以...

    源码(精通正则表达式&实战正则表达式)

    1. **数据验证**:在表单验证中,使用正则表达式检查邮箱、电话号码、日期格式等。 2. **文本处理**:从大量文本中提取特定信息,如网页爬虫抓取链接、解析HTML标签等。 3. **替换操作**:批量替换文本,如去除空白...

    JS的正则表达式进行验证

    在JavaScript(JS)中,正则表达式同样发挥着不可或缺的作用,尤其是在用户输入验证方面,能够极大地提高程序的健壮性和用户体验。 ### 标题解析:“JS的正则表达式进行验证” 标题直接点明了文章的主题,即利用...

    邮箱校验正则表达式

    在给定的示例代码中,我们可以看到使用JavaScript来实现邮箱校验正则表达式的验证。首先,我们需要获取用户输入的邮箱地址,然后使用正则表达式来判断输入的字符串是否符合邮箱地址的格式。如果输入的字符串不符合...

    常用的javascript基于正则表达式的文本框验证代码

    正则表达式(Regular Expression)在JavaScript中扮演着关键角色,它是一种强大的文本匹配工具,可以用来执行复杂的数据验证。 1. **正则表达式基础** 正则表达式是由字符和特殊符号组成的模式,用于匹配字符串。...

    全面的js表单验证包含正则表达式还有本人写的表单验证

    这个资源包显然提供了一个全面的JS表单验证解决方案,包括了正则表达式和作者自编的验证逻辑,非常适合初学者学习和参考。 一、表单验证的重要性 在网页中,表单是用来收集用户数据的关键元素,如用户名、密码、...

    js表单输入正则表达式验证代码

    本教程将深入探讨如何在JavaScript表单中使用正则表达式进行输入验证。 1. **基本概念** - **正则表达式**:是由字符和特殊符号组成的模式,用于匹配字符串。 - **表单验证**:在用户提交表单前检查输入数据是否...

    正则表达式大全 正则表达式 模式匹配 Javascript

    正则表达式(Regular Expression)是一种模式匹配工具,在文本处理领域有着广泛的应用,尤其是在JavaScript等编程语言中,用于字符串搜索、替换以及提取等功能。本文将详细介绍一系列常用的正则表达式及其应用场景,...

    JS只能输入数字,数字和字母等的正则表达式

    在JavaScript(JS)中,正则表达式是一种强大的...总的来说,通过结合JavaScript和正则表达式,我们可以创建出具有强大验证功能的HTML表单,确保用户输入的数据符合我们的预期格式,从而提升用户体验和数据的准确性。

    使用正则表达式验证中文汉字输入

    在本主题中,“使用正则表达式验证中文汉字输入”着重讲解如何利用正则表达式来确保用户输入的数据仅包含合法的中文汉字。 首先,我们需要了解中文汉字在计算机中的表示方式。中文字符在Unicode编码中占据着一定的...

    Jquery正则表达式用户验证

    ### Jquery正则表达式用户验证:深入解析与实践 #### 标题解析 标题“Jquery正则表达式用户验证”明确指出本文的主题聚焦于使用JQuery库结合正则表达式来实现用户输入的验证功能。这通常涉及到对用户在表单中输入的...

    正则表达式时间验证

    1. **编写JavaScript函数**:利用正则表达式编写一个JavaScript函数,用于验证用户输入的日期时间格式是否符合预期。 2. **集成到框架中**:将此正则表达式集成到现有的Web框架中,例如ASP.NET MVC,实现自动验证...

    正则表达式(里面包含大量的正则表达式)

    - **数据验证**:网页表单、数据库输入等场景中,使用正则表达式验证用户输入的格式。 - **文本搜索**:在大量文本中快速找到符合特定模式的行或字符串。 - **数据提取**:从日志文件、网页源代码中抽取有用信息...

    日常收集JS邮箱验证正则表达式

    本文将详细介绍如何使用JavaScript正则表达式对邮箱进行验证,以及常见的邮箱验证正则表达式的写法和注意事项。 首先,邮箱的基本结构由本地部分、"@"符号和域名部分组成。一般格式为:username@domain。其中,本地...

Global site tag (gtag.js) - Google Analytics