问答详情
源自:3-8 正则匹配常用案例

正则表达式里 ^ 这个符号到底是干啥的呢?

在网上查了一下,有两种说法,一种说是从字符串的开头匹配,另一种说是取补集,也就是例如正则表达式[^269A-Z] 将匹配除了2、6、9和所有大写字母之外的任何字符。

到底哪种说法是正确的呢?

还有一个 $ 符号我也搞不懂,比如:"^[A-Za-z]+$",怎么就表示由26个英文字母组成的字符串呢?去掉 $ 不是一样的么?

提问者:金泽城 2017-03-10 11:06

个回答

  • EugenioCode
    2017-03-10 11:21:12
    已采纳

    //里面的^是锚点,表示起始位置;$表示结尾位置

    如果^出现在[]里面,就是取反………………有点儿蹩脚的解释,不过我是这么理解的

  • Tesjunma
    2017-04-11 19:37:48

    ^是脱字符,字符类外的脱字符表示于字符串开始锚定模式。如果没有这个字符,可以在字符串的任意位置开始匹配。字符类内部的脱字符则表示“匹配中括号中所列字符以外的其他字符”。

  • EugenioCode
    2017-03-10 21:21:27

    前端助手插件

  • EugenioCode
    2017-03-10 11:36:16

    公司电脑上没有,我要回去看一下 然后告诉你吧