如何使用正则表达式

前端之家收集整理的这篇文章主要介绍了如何使用正则表达式前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

在js中,该如何使用正则表达式来对表单进行验证呢?相信小伙伴们在学习的过程中定碰到了这样的问题。举个实际一点儿的栗子,譬如邮箱这样的表单该如何验证呢?下面就来进行介绍,看完本博客,相信你能就能独自完成用正则表达式来进行表单验证了。

1、首先我们要了解正则表达式中常见的符号以及所表示的意思,如\w、\s/、\W、\S它们表示什么。如果不熟悉这些符号,我们是无法完成对正则表达式的操控的,附上一张表供大家学习。

2、除了一表要了解以外,还有表二的正则表达式重复字符也得了解

############################################################################################

分割线

具体实现:

通过表一、表二我们就可以实现对邮箱的正则表达式验证了。以一个具体实例进行展示。譬如我们现在要对

missyou_1993@qq.com 这个邮箱进行验证。分析

1、先进行拆分

由其邮箱结构我们可依据‘@’和'.'将该邮箱分为3部分,然后分别进行匹配。即missyou_1993、qq、com三部分。显然missyou_1993部分可用\w进行匹配,qq这部分也得用\w进行匹配,比较特殊的就是com部分了,由于末尾的域名只会包含com、cn这些字符,并不会出现数字或者下划线,因此需要对其进行限制。com匹配部分为[a-zA-z](表示只能出现a到z或A到Z的英文字母)。

2、次数的确定

显然,对于第一部分和第二部分,字符出现的个数至少为一次,因此可以用“+”表示,“.”后面的字符,一般是.com或.cn域名,因此出现的字符数为2至3个,因此可用{2,3}表示。综合可知:

第一、二部分为:\w+ 第三部分为:[a-zA-Z]{2,3},于是表达式变为 \w+@\w+.[a-zA-Z]{2,3}

3、对于特殊字符,应进行转义处理,如邮箱中的那个点需要转义成 \. 于是表达式变为 \w+@\w+\.[a-zA-Z]{2,3}

4、加上起始和终止符符 ^ 、$ 于是表达式成为 ^\w+@\w+\.[a-zA-Z]{2,3}$

5、加上模式符/....../ 于是表达式成为 /^\w+@\w+\.[a-zA-Z]{2,3}$/

你以为酱紫就完了吗?too naïve,作为一只程序猿,而不是XX狗,我们考虑问题得全面一些。你想想,难道电子邮箱难道就只有 xxx@xxx.com 这种形式吗? 这种有木有 xxx@xxxx.com.cn?( 雅虎的邮箱就是那一种)。因此,我们还需要对上述正则表达式进行修改,那怎样才能比较好地解决呢。。。。不就是让.com或.cn它们出现一次或者两次吗,有没有想到这个{1,2}?





咳咳咳。。。那就公布修改过后的的正则表达式: /^\w+@\w+(\.[a-zA-Z]{2,3}){1,2}$/


话说不要将括号放错位置哟

######################################################分割一下 Tips:

以上代码中的()或“,”均应该是英文模式下的括号和逗号,否则调试时是会报错的,望能多留心和注意。



猜你在找的正则表达式相关文章