zoukankan      html  css  js  c++  java
  • 正则表达式:(?=a)是什么意思?

    1.(?=a) 表示我们需要匹配某样东西的前面。

    2.(?!a) 表示我们需要不匹配某样东西。

    3.(?:a) 表示我们需要匹配某样东西本身。

    4.(?<=a) 表示我们需要匹配某样东西的后面。

    5.(?<!a) 表示我们需要不匹配某样东西,与(?!a)方向相反

    例子说明:

    1.(?=a):

     console.log("我是中国人".replace(/我是(?=中国)/, "rr"))

    打印出:rr中国人    (匹配的是中国前面的'我是')

    2.(?!a):

    console.log("我是中国人".replace(/(?!中国)/, "rr"))

    打印出:rr我是中国人  

    3.(?:a):

     console.log("我是中国人".replace(/(?:中国)/, "rr"))

    打印出:我是rr人

    4..(?<=a):

    console.log("我是中国人".replace(/(?<=中国)人/, "rr")) 

    打印出:我是中国rr

    5.(?<!a):

      console.log("我是中国人".replace(/(?<!中国)/, "rr")) 

    打印出:rr我是中国人

    一些正则实际使用

    去除字符串中的中文

    console.log("aaa我是中国人111".replace(/[^u4E00-u9FA5]/g, "")) // 去除中文,输出:'aaa111' 

    去除字符串中的英文

    console.log("aaa我是中国人111".replace(/([a-z])+/g, "")) // 去除英文,输出:'我是中国人111'

    去除字符串中的数字

    console.log("aaa我是中国人111".replace(/(d)+/g, "")) // 去除数字,输出:'aaa我是中国人' 

    数字格式化

    console.log("1234567890".replace(/B(?=(?:d{3})+(?!d))/g,",")) 
    // 输出:'1,234,567,890'

    去除ip地址

    console.log("192.168.0.1".replace(/((2[0-4]d|25[0-5]|[01]?dd?).){3}(2[0-4]d|25[0-5]|[01]?dd?)/,"rr"))
    // 输出:'rr'

     参考链接https://juejin.im/post/5ceb7d9df265da1b8811ba7f

  • 相关阅读:
    mysql慢日志设置
    CURL模拟登陆
    违法图片检测
    PHP取二进制文件头快速判断文件类型
    重写session
    mysql处理高并发,防止库存超卖
    mysql中使用update select
    PHP中使用Luhn算法校验信用卡及借记卡卡号
    红包算法
    DIV当textarea使用,在聚焦的时候将光标移动到内容的末尾
  • 原文地址:https://www.cnblogs.com/lwming/p/10943193.html
Copyright © 2011-2022 走看看