js之数据类型(对象类型
正则(regular expression)描述了一种字符串的匹配式。一般应用在一些方法中,用一些特殊的符号去代表一些特定的内容,对字符串中的信息实现查找,替换,和提取的操作。js中的正则表达式用RegExp对象表示,有两种写法:一种是字面量写法,,一种是构造函数写法。
一、定义正则表达式
字面量创建方式 /正则表达式/[修饰符可写可不写]
实例创建方式 new RegExp(字符串,[修饰符])
二者的区别:直接量定义不能进行字符串拼接,实例创建方式可以;字面量创建方式特殊含义的字符不需要转义,实例创建方式需要转义。
修饰符(放在第二个斜杠的后面)
g: 代表全局(global)匹配,模式将用用所有字符串,并非在发现第一个匹配项时就停止
i: 不区分大小写,在确定匹配项的时候忽略大小写
m: 多行模式,在到达一行文本末尾还会继续查找下一行中是否存在与模式匹配的项
<script> str = ‘davina‘; var re = /i/; var re1 = new RegExp(‘davina‘); str1 = ‘davi/na‘; var re2 = ‘/i\//‘; //注意:正则在匹配/时会有问题,需要转义 console.log(re, re1, re2); // /i/ /davina/ "/i//" </script>
二、常用的正则字符
<script> 转义字符 1. \\ 反斜杠 2. \‘ 单引号 3. \" 双引号 4. \d 数字(0-9之间的任意一个数字) 5. \D 除数字以外的任意字符 6. \r 回车 7. \n 换行 8. \f 走纸换页 9. \t 横向跳格 10.\s 空格 11.\S 非空格 12.\w 数字,字母,下划线0-9 a-z A-Z 13.\W 非数字,非字母,非下划线 14.\b 单词的边界,独立的部分(字符串的开头结尾,空格的两边都是边界) 15. \B 非边界的部分 16. . 任意一个字符(代表所有) 17. \. 真正的点 中括号 18.[abc] 查找中括号中的任意字符 19.[^abc] 查找任何不在方括号之间的字符(^表示除掉某个字符) 20.[0-9] 查找任何从0-9的数字 21.[a-z] 查找任何从小写a到小写z的字符 22.[A-Z] 查找任何从大写A到大写Z的字符 [\u4e00-\u9fa5] 中文区间,包含所有的汉字 量词:一般用于限制正则的长度 23.{n} 重复n次 (正好n次) 24.{n,m} 至少重复n次,最多重复m次 25.{n,} 至少重复n次,最多不限 (n到多) 26.+ 至少重复1次,最多不限{1,} (1到多) 27.? 至少重复0次,最多重复1次{0,1}(0到1次可有可无) 28.* 至少重复0次,最多不限{0,} (0到多) 29.n$ 匹配任何结尾为n的字符串 30.^n 匹配任何开头为n的字符串 31.x|y 匹配x或者是y </script>
温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/41501.html