JS_正则表达式

来源:互联网 发布:如何清除软件注册表 编辑:程序博客网 时间:2024/05/18 12:29

1.字面量

var reg = / \bis\b /g;

2.构造函数

var reg=new RegExp('\\bis\\b','g')

3.修饰符

       g:global 全文搜索,不添加,搜索到第一个匹配停止       i:ignore case 忽略大小写,默认大小写敏感       m:multiple lines 多行搜索

4.元字符

      正则表达式两种基本自负类型组成:      -- 原意文本字符      -- 元字符         \t 水平制表符         \v 垂直制表符         \n 换行符         \r 回车符         \0 空字符         \f 换页符
 元字符是在正则表达式中有特殊含义的非字母字符   * + ? $ ^ . | \ () {} []

5.字符类

所谓类是指符合某些特性的对象,一个泛指,而不是特指某个字符
表达式[abc]把字符a或b或c归为一类,表达式可以匹配这类字符

Ex:   'a1b2c3d4'.replace(/[abc]/g,'x') -->  'x1x2x3d4'

6.字符类取反

使用元字符^创建 反向类/负向类
反向类的意思是不属于某类的内容
表达式[^abc]表示不是字符a或b或c的内容

Ex:   'a1b2c3d4'.replace(/[^abc]/g,'x') -->  'axbxcxxx'

7.范围类

使用[a-z]来连接两个字符表示从a到z的任意字符
这是个闭区间,也就是包含a和z本身

Ex:   'a1b2c3d4aa--'.replace(/[^a-c-]/g,'x') -->  'axbxcxxxaaxx'

8.预定类

.    [^\r\n]          除了回车符和换行符之外的所有字符       \d    [0-9]           数字字符       \D    非数字字符      非数字字符       \s    [\t\n\x0B\f\r]  空白符       \S    [^\t\n\x0B\f\r] 非空白字符       \w    [a-zA-Z_0-9]     单词字符(字母,数字,下划线)       \W    [^a-zA-Z_0-9]    非单词字符

9.边界

       ^     以xxx开始       $     以xxx结束       Ex:               '@123@abc@'.replace(/@./g,'Q') --> 'Q23Qbc@'             '@123@abc@'.replace(/^@./g,'Q') --> 'Q23@abc@'             '@123@abc@'.replace(/.@/g,'Q') --> '@12QabQ'       \b    单词边界       \B    非单词边界
Ex:               'This is a boy'.replace(/is/g,'0') --> 'th0 0 a boy'             'This is a boy'.replace(/\bis\b/g,'0') --> 'this 0 a boy'             'This is a boy'.replace(/\Bis\b/g,'0') --> 'th0 is a boy'
0 0
原创粉丝点击