• 正则表达式


    转义字符

        \"-----实现在双引号里再放双引号
        \r-----行结束符,即回车
        \t-----制表符,键盘得tab键                                                                                                                  \n------实现换行

    1、正则表达式RegExp(Regular Expression):匹配 特殊字符或有特殊搭配原则的字符 的最佳选择

    2、直接量  其本身是一个对象,表达的意义是一种规则。

    (1)在两个斜杠中间写规则。

    1. var reg=/abc/;
    2. var str="abcd";
    3. reg.test(str) ; //true 检查在字符串str中有没有符合reg规则得字符

     另一种创建表示方法

    1. var reg=new RegExp("小狮子")
    2. var str="小狮子1314"
    3. var res=reg.test(str)
    4. console.log(res) //true

    也可用match方法来查看

    1. var reg=/小狮子\./
    2. var str="小狮子.1314"
    3. var res=str.match(reg)
    4. console.log(res) //['小狮子.']

     ^开头表示开头,$结尾表示末尾

    1. 笔试题 去掉字符串的头尾空格
    2. str.tirm()
    3. var reg=/^\s/
    4. var str=" abc"
    5. var re=str.replace(reg,"")
    6. console.log("-"+re)

    3、在正则表达式得双斜杠后边还可以加字母i、g、m,表达其属性

    1. var reg=/a/i
    2. var str="bAcdefAg666"
    3. var res=reg.test(str)
    4. console.log(res) //true
    5. var reg=/a/ig
    6. var str="bAcdefAg6acbb66"
    7. var arr=str.match(reg)
    8. console.log(arr) //['A', 'A', 'a']

    4、方括号

     ^括号中表示非的意思,  |表示或的意思

    1. var reg=/[赵钱孙][云鹤][abc]/g;
    2. var str="a钱鹤b赵云cd";
    3. var arr=str.match(reg);
    4. console.log(arr) //['钱鹤b', '赵云c']
    1. var reg=/^[赵钱孙][云鹤][^(a-y)]/g;
    2. var str="钱鹤z赵云zd";
    3. var arr=str.match(reg);
    4. console.log(arr) //['钱鹤z']
    1. var reg=/(abc|bcd)/g;
    2. var str="abc";
    3. str.match(reg);//["abc"];//该规则既能匹配出字符串"abc"
    4. str="bcd";
    5. str.match(reg);//["bcd"];//该规则又能匹配出字符串"bcd"
    6. reg=/(abc|bcd)[0-9]/g; //匹配规则可以任意组合
    7. str="bcd2";
    8. str.match(reg);

    5、元字符

    元字符是拥有特殊含义的字符,元字符也可以组合放进中括号里去使用,一个元字符代表一位(\d|\D)

     6、量词

     7、正则对象方法

    方法描述
    exec寻找字符串中是否含有检测的字符。返回:将找到的字符按数组返回。(execute)
    test检测字符串中是否含有检测的字符。返回:boolean。

    1. var reg=/ab/g;
    2. var str="abababab";
    3. reg.exec(str);//["ab"],尽管具有global属性,仍然只返回一个"ab"
    4. //再继续,只会从下一个开始
    5. reg.exec(str);//["ab"]
    6. reg.exec(str);//["ab"]
    7. reg.exec(str);//["ab"]
    8. reg.exec(str);//null
    9. reg.exec(str);//["ab"]
    10. reg.exec(str);//["ab"]

    8、支持正则表达式的String对象的方法

    方法描述
    search检索与正则表达式相匹配的值,返回匹配字符串的位置
    match找到一个或多个正则表达式的匹配
    replace替换与正则表达式匹配的字串
    split把字符串分割为字符串数组
    1. var str="abcasdfdsgsdfg"
    2. var reg=/a/g
    3. var str2=str.replace(reg,"***")
    4. console.log(str2) //***bc***sdfdsgsdfg
    1. reg=/(\w)\1(\w)\2/g;
    2. str="edbaabbbbee";
    3. str.search(reg);
    4. str.search(reg);//3,与lastIndex无关,只返回第一个符合匹配规则的索引位置
    5. reg=/(\w)\1(\w)\2/g;
    6. str="abc";
    7. str.search(reg);//-1

     练习题

    1. 去掉字符串前后空格
    2. var str=" hello "
    3. var reg=/(^\s+)|(\s+$)/g
    4. // var re=str.replace(reg,"")
    5. var re=str.trim()
    6. console.log("a"+re+"x")
    1. 重复次数
    2. var str="helloalbc"
    3. var count=0;
    4. var temp=0;
    5. while (str.indexOf("l",temp)!=-1){
    6. count++
    7. temp=str.indexOf("l",temp)+1
    8. }
    9. console.log(count)

  • 相关阅读:
    【设计模式】类图
    达梦数据库调整非默认模式所属数据库用户
    春风吹又生的开源项目「GitHub 热点速览」
    docker安装一系列镜像
    批量改尺寸的软件哪个好?这款工具可以提升工作效率
    eNSP实现 telnet 和 ssh 远程登录及抓包
    uni-app:js实现数组中的相关处理
    macOS github 如何解决SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443
    探讨大米自动化生产线包装设备的智能化发展趋势
    力扣3.无重复字符的最长子串(JavaScript版本)
  • 原文地址:https://blog.csdn.net/m0_63470734/article/details/125614940