zoukankan      html  css  js  c++  java
  • 正则表达式"(^|&)" ,什么意思?

     ^匹配字符串开头,&就是&字符 (^|&)匹配字符串开头或者&字符,如果其后还有正则,那么必须出现在字符串开始或&字符之后

    用法一:   限定开头

        文档上给出了解释是匹配输入的开始,如果多行标示被设置成了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”。

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

  • 相关阅读:
    HTML5之Canvas影片广场
    iOS英语—》中国本土化,如调用专辑,摄像头的变化“cancel”,“photos”至“撤消”,“摄像头”
    约瑟夫问题解决
    2014在百度之星资格赛的第二个问题Disk Schedule
    2015第30周二
    2015第30周一
    2015第29周日
    2015第29周六Spring
    2015第29周五AOP
    2015第29周四
  • 原文地址:https://www.cnblogs.com/kelelipeng/p/11194314.html
Copyright © 2011-2022 走看看