正则表达式

1.正则表达式 是ECMAScript的内置对象
由普通字符和特殊字符组成的
用于表述特定的字符规则

正则表达式的定义
1.直接量
var reg=/abc/;
2.构造函数
var reg=new RegExp('abc');
正则表达式有一些特殊字符串 需要转义\后才能使用
. / \ * ? + [ ] ( ) { } ^ | $

test函数
语法:reg.test(string)
描述:该函数用于检测参数的内的字符串是否符合正则表达式的规则,并返回一个布尔值
console.log(reg.test('a1bc'));

2.字符集
正则表达式中的字符集以中括号[]表示
中括号内可以写任意数量的字符
含义:表示匹配字符集内的任意单个字符
[abc] 表示匹配abc中的任意一个字符
[abc][c] 第一个字符是abc中任意一个 第二个字符是c
[^abc] ^在字符集中 表示的是不匹配的意思 不匹配abc中的任意一个字符
[0-9] 表示匹配任意一个数字
[a-z] 表示匹配任意小写字母
[A-Z] 表示匹配任意大写字母
[A-z] 表示匹配任意大小写字母

3.预定义字符集
预定义字符集
预先设置好的字符集

\d 匹配一个数字 相当于[0-9]
\D 匹配一个非数字 相当于[^0-9]
\w 匹配 数字、字母、下划线 相当于[A-z0-9_]
\W 匹配 非 数字、字母、下划线 相当于[^A-z0-9_]
\s 匹配 一个空白符(空格 制表符)
\S 匹配 一个非空白符
. 匹配除了回车和换行(\r\n)外的任意字符

4.匹配数量
表示匹配的字符次数
n? 表示匹配0次或1次字符n
n* 表示匹配0次或多次字符n
n+ 表示匹配1次或多次字符n
n{x} 表示匹配x次字符n
n{x,y} 表示匹配至少x次最多y次字符n
n{x,} 表示匹配最少x次字符n

5.选择分组
选择和分组
| 表示选择 相当于 逻辑或||
() 表示分组 小括号内被看作一个整体

6.匹配边界
匹配边界
^ 表示匹配的边界开始
$ 表示匹配的边界结束
正则表达式严谨的用法 一般都会设定边界

7.修饰符
正则表达式的属性
global 修饰符g 全局匹配
ignoreCase 修饰符i 忽略大小写
multiline 修饰符m 多行匹配

        var str = "h1ah12 3s 5g asd h47";
        String.prototype.match(reg)
        该方法用于在字符串中检索符合正则规则的字符串内容,将检索到的内容写入一个新数组
        该方法的结果比较依赖global属性
        console.log(str.match(reg));

        String.prototype.search(reg)
        该方法用于在字符串中检索与正则所匹配的子串的第一个字符位置,如果没有找到返回-1
        var str = "JavaScript is fun";
        console.log(str.search(/java/i));

常用正则:[\u4e00-\u9fa5] 中文 [\u0931-\uFFF5]

data-是HTML5标准新增加的自定义属性
elm.dataset 这个是data- 的js接口

8.trim函数
去除字符串前后空格

  1. String.prototype.trim()
    用于去除前后空格
    console.log(str.trim());

2.function trim(str) {
return str.replace(/^\s+|\s+$/g, "");
}
console.log(trim(str));

9.$符的应用
选择某个子表达式匹配的文本
1.exec检索字符串中指定的值。返回找到的值,并确定其位置
2.test()检索字符串中指定的值。返回true或者false

10.文本采集

扩展:replace用于更换''

posted on 2020-02-27 15:36  是夏目呀  阅读(201)  评论(0编辑  收藏  举报

导航