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

来源:3-8 正则匹配常用案例

金泽城

2017-03-10 11:06

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

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

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

写回答 关注

4回答

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

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

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

    金泽城 回复Eugeni...

    哈,还有这种插件,能介绍一下吗,多谢您嘞 ^_^

    2017-03-10 11:34:43

    共 4 条回复 >

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

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

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

    金泽城

    好嘞,收到,再次感谢!

    2017-03-11 16:15:54

    共 1 条回复 >

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

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

    金泽城

    嗯嗯,好滴,麻烦您了,感谢!

    2017-03-10 11:51:38

    共 2 条回复 >

PHP进阶篇

轻松学习PHP中级课程,进行全面了解,用PHP快速开发网站程序

181728 学习 · 2575 问题

查看课程

相似问题