正则表达式

正则表达式,就是用某种模式去匹配一类字符串的公式

正则表达式往往需要2部分内容:被验证的字符串和正则表达式。

####一、正则表达式的定义方法
在JavaScript中,正则表达式是由一个RegExp对象表示的,利用RegExp对象来完成有关正则表达式的操作和功能。

正则表达式的定义共有2种方式:

(1)显式定义;

(2)隐式定义;

#####1、显式定义
显式定义必须是使用new关键词来定义。

语法:

var 变量名 =  new RegExp("正则表达式模式");

说明:

显式定义的正则表达式必须要使用双引号括起来,这里要注意字符串的转义。

#####2、隐式定义
语法:
var 变量名 = /正则表达式模式/;

说明:
隐式定义的正则表达式开头和结尾都必须是斜杠“/”。记得使用隐式定义的正则表达式是不需要使用双引号括起来的,这一点跟显式定义的正则表达式不一样!

隐式定义是最常用的方式,代码量少并且方便。

举例:
var myregex = new RegExp("[0-9]");
等价于
var myregex = /[0-9]/;


###test()方法 ####一、test()方法 **语法:** regex.test(str)

说明:
regex为必选项,表示正则表达式模式

str为必选项,表示字符串

该方法返回一个boolean值。也就是说,test()方法检查字符串str是否符合正则表达式模式regexp,如果符合,则返回true;如果不符合,则返回false。

验证邮政编码的正则表达式模式为“ \d{6}”。“\d{6}”表示6个字符都是数字,如果某一个字符串符合“6个字符都是数字”这种模式,那么test()方法就返回true,如果不符合,则返回false。

例如字符串“510632”就符合正则表达式模式“\d{6}”。而字符串“abc123”或“lvyestudy”就不符合正则表达式模式“\d{6}”,因为“abc123”虽然是6个字符,但是不符合所有字符都是数字。而“lvyestudy”不符合得原因有2点:①字符超过6个字符;②字符都不是数字。


###常用元字符 在正则表达式中,包括2种字符:
(1)普通字符;
(2)特殊字符(元字符);

普通字符就是az、09这类常见的字符。其中特殊字符又称为“元字符”。元字符之所以叫特殊字符,就是它的特点跟普通字符不一样。例如邮政编码中,我们限定只能输入6个数字,那“数字”这个概念怎么理解呢?这个时候我们就用到了元字符\d来代替。

0\d{2}-\d{8}

元字符 说明
\d 匹配数字,相当于[0-9]
\D 匹配非数字,相当于[ ^0-9]
\w 匹配字母或数字或汉字或下划线
\W 匹配任意不是字母、数字、汉字或下划线的字符
\s 匹配任意的空白符,如空格、换行符、制表符等
\S 匹配任意不是空白符的字符
.(点号) 匹配除了换行符以外的任意字符
[…] 匹配方括号中的所有字符
[ ^…] 匹配非方括号中的所有字符

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值