加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何使用正则表达式

发布时间:2020-12-14 00:55:40 所属栏目:百科 来源:网络整理
导读:在js中,该如何使用正则表达式来对表单进行验证呢?相信小伙伴们在学习的过程中定碰到了这样的问题。举个实际一点儿的栗子,譬如邮箱这样的表单该如何验证呢?下面就来进行介绍,看完本博客,相信你能就能独自完成用正则表达式来进行表单验证了。 1、首先我

在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:

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



(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读