ES5基础之正则表达式01:初次见面

1.正则初次见面

测试地址:https://regexper.com

第一个正则:匹配 2006-10-11 或 2006/10/11

var reg = /^\d{4}[-/]\d{2}[-/]\d{2}$/;

上述写法表示使用字面量创建正则对象

当然还有一个创建正则表达式的方法,通过RegExp()构造函数。

    //在线测试工具:https://regexper.com/


    //第一个正则匹配:将 2006-10-11 或 2006/10/11
    var reg = /^\d{4}[-/]\d{2}[-/]\d{2}$/;


    /* RegExp对象
     * Javascript通过内置对象RegExp支持正则表达式
     * 有两种方法实例化RegExp对象
     * 1.字面量
     * 2.构造函数
     */


    /* 1.替换字符串:将单词 is 替换为 IS
     * 这里默认匹配第一个
     */
    var string = 'This is a boy, This is a girl';
    string = string.replace(/\bis\b/, 'IS');
    console.log(string);
    // \b(word)\b表示匹配一个完整的单词word;



    //那么如何实现匹配全文呢?使用修饰符g
    var string = 'This is a boy, This is a girl';
    string = string.replace(/\bis\b/g, 'IS');
    console.log(string);


    /* 2.使用构造函数
     * var reg = new RegExp(string, )
     * 构造函数RegExp()接受两个参数,第一个为正则,第二个为修饰符
     */
    var reg = new RegExp('\\bis\\b', 'g');


    /* 3.修饰符
     * g:global,表示全文搜索,如果不添加则搜索到第一个则停止
     * i:ignore,忽略大小写,默认大小写敏感
     * m:multipul lines 多行匹配
     */
    //测试修饰符i
    var string = 'this is a boy, this Is a girl';
    string = string.replace(/\bis\b/g, 0);
    console.log(string);
    //上面只会将第一个 is 替换为 0


    //测试修饰符i
    var string = 'this is a boy, this Is a girl';
    string = string.replace(/\bis\b/gi, 0);
    console.log(string);
    //上面会将两个 is 替换为 0,因为使用了 i 使得匹配模式对大小写不敏感

 

posted on 2017-01-03 21:43  码先生  阅读(618)  评论(0编辑  收藏  举报