进阶8:setTimeout用法 & 任务队列异步函数节流

2017-12-15  本文已影响0人  jrg陈咪咪sunny

什么是贪婪模式和非贪婪模式?
回答内容

    String str="abcaxc";

        Patter p="ab*c";

      贪婪匹配:正则表达式一般趋向于最大长度匹配,也就是所谓的贪婪匹配。如上面使用模式p匹配字符串str,结果就是匹配到:abcaxc(ab*c)。

      非贪婪匹配:就是匹配到结果就好,就少的匹配字符。如上面使用模式p匹配字符串str,结果就是匹配到:abc(ab*c)。

写一个函数isValidUsername(str),判断用户输入的是不是合法的用户名(长度6-20个字符,只能包括字母、数字、下划线)。
回答内容

    function isValidUsername(str){
    var reg = /^\w{6,20}$/;
    return reg.test(str);
    }

    var str = "chengong_jirengu"
    isValidUsername(str) // true

写一个函数isPhoneNum(str),判断用户输入的是不是手机号。
回答内容

    function isPhoneNum(str){
    var reg = /^(+86)?-1[358]\d{9}$/;
    return reg.test(str);
    }

    var str = "+86-13123456789";
    isPhoneNum(str); // true

既然+86都加了?,其实-也可以加?
题干

写一个函数isEmail(str),判断用户输入的是不是邮箱。
回答内容

   function isEmail(str){
    var reg = /^[\w|-]+@\w+.com$/;
    return reg.test(str);
    }

    var str = "cmimi125@qq.com";
    isEmail(str); // true

注意下. 表示除了回车符、换行符之外的所有字符

写一个函数trim(str),去除字符串两边的空白字符。
回答内容

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

    var str = " che ng ong ";
    trim(str); // "che ng ong"

\d,\w,\s,[a-zA-Z0-9],\b,.,*,+,?,x{3},^,$分别是什么?
回答内容

    \d 表示数字,等价[0-9]
    \w 表示字符、字母、数字、下划线,等价 [a-zA-Z_0-9]
    \s 表示空白符,等价[\t\n\x0B\f\r]
    [a-zA-Z0-9] 表示小写字母、大写字母、数字
    \b 表示单词边界
    . 表示除了回车符、换行符之外的所有字符,等价 [^\r\n]
        表示 0 次或多次,等价 {0,}
        表示 1 次或多次,等价 {1,}
        ? 表示 0 次或 1 次,等价 {0,1}
        x{3} 表示 xxx,即 x 出现3次
        ^ 表示开头
        $ 表示结尾
上一篇 下一篇

猜你喜欢

热点阅读