• 正则表达式中^的用法


    转自https://blog.csdn.net/doubleguy/article/details/90341705

    用法一:   限定开头

        文档上给出了解释是匹配输入的开始,如果多行标示被设置成了true,同时会匹配后面紧跟的字符。    比如 /^A/会匹配"An e"中的A,但是不会匹配"ab A"中的A

    用法二:(否)取反

        当这个字符出现在一个字符集合模式的第一个字符时,他将会有不同的含义。

        比如: /[^a-zs]/会匹配"my 3 sisters"中的"3"  这里的”^”的意思是字符类的否定,上面的正则表达式的意思是匹配不是(a到z和空白字符)的字符。 

    总结:

    什么时候”^”是否定字符,什么时候是匹配开始行

    表示限定开头的示例:

    1

    2

    3

    4

    5

    /[(^s+)(s+$)]/g

    (^cat)$

    (^cat$)

    ^(cat)$

    ^(cat$)

    表示否定的示例:

    1

    2

    3

    [^a]表示“匹配除了a的任意字符”。

    [^a-zA-Z0-9]表示“找到一个非字母也非数字的字符”。

    [^abc]表示“找到一个插入符或者a或者b或者c”。

    经过对比,只要是”^”这个字符是在中括号”[]”中被使用的话就是表示字符类的否定,如果不是的话就是表示限定开头。我这里说的是直接在”[]”中使用,不包括嵌套使用。 
    其实也就是说”[]”代表的是一个字符集,”^”只有在字符集中才是反向字符集的意思

  • 相关阅读:
    Extending Markov to Hidden Markov
    Logistic Regression – Geometric Intuition
    【计算机视觉】会议投稿相关推荐
    NP难问题求解综述
    PCA的数学原理
    Brief History of Machine Learning
    图像局部特征点检测算法综述【修正排版】
    thinkphp输出表格
    1503162139-ny-分数拆分
    C++中经常使用到宏
  • 原文地址:https://www.cnblogs.com/li-lou/p/13816760.html
Copyright © 2020-2023  润新知