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

正则表达式学习

发布时间:2020-12-13 22:03:54 所属栏目:百科 来源:网络整理
导读:一、 创建正则表达式的两种方式 1. 通过构造函数定义 var 变量名 = new RegExp ( /表达式/ ); 2. 通过直接量定义 var 变量名 = /表达式/; 二、 认识正则符号 简写 完整写法 语意1. . [ ^ n r ] 除了换行和回车之外的任意字符2. d [ 0-9 ] 数字字符3. D

一、 创建正则表达式的两种方式

1.  通过构造函数定义
var 变量名 = new RegExp(/表达式/);
2.  通过直接量定义
var 变量名 = /表达式/;

二、 认识正则符号

简写   完整写法        语意
1.  .       [^nr]          除了换行和回车之外的任意字符
2.  d   [0-9]            数字字符
3.  D   [^0-9]           非数字字符
4.  s  [tnxOBfr]     空白字符
5.  S  [^tnxOBfr] 非空白字符
6.  w   [a-zA-Z_0-9]       单词字符
7.  W   [a-zA-Z_0-9]       非单词字符

注:括号内,前面加个元字符^进行取反,表示匹配不能为括号里面的字符。Eg: console.log(/[^abc]/.test(‘a’)); 答案是false

三、 特殊字符

t  ——  制表符
n  ——  换行符
r  ——  回车符
f   ——  换页符
b  ——  与回退字符
v  ——  垂直制表符
o  ——  空字符

四、 正则说明

1. 如果匹配的东西过多,但类型又是一致的,这种情况下,可以在中间加一个-表示范围eg: [a-z]表示a到之间;
2. ^ 会匹配行或者字符串的起始位置
3. $ 会匹配行或字符串的结尾位置

五、 量词

“*” === {0,}(贪婪)重复零次或更多(>=0)
“ + ” === {1,}(懒惰)重复一次或更多次(>=1)
“ ? ” ==={0,1}(占有)重复零次或一次(0||1

六、 正则对象方法

用来检测字符串是否符合定义的正则规则,结果返回truefalseEg: var reg = /^d$/;
        Console.log(reg.test(“测试”)); //返回false
        Console.log(reg.test(“123”)); //返回true

七、 实例

验证姓名:只能是汉字,并且字数在2-3个之间
  [u4e00-u9fa5]

匹配Email地址的正则表达式:
  /^[w]+@[w]+.[w]{2,4}$/ 匹配网址URL的正则表达式: [a-zA-z]+://[^s]* 

(编辑:李大同)

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

    推荐文章
      热点阅读