正则表达式中的"^"这个符号的一些思考
来源:互联网 发布:美工对电脑配置的要求 编辑:程序博客网 时间:2024/05/29 17:22
在学习正则表达式的时候,一些常见的规则我们都不难理解,但是有 一个正则表达式中的特殊字符让我一直有点搞不懂,就是”^”这个字符,文档上给出了解释是匹配输入的开始,如果多行标示被设置成了true,同时会匹配后面紧跟的字符。比如
/^A/会匹配"An e"中的A,但是不会匹配"ab A"中的A
- 1
- 1
然后他还有第二种用法就是
当这个字符出现在一个字符集合模式的第一个字符时,他将会有不同的含义。
比如
/[^a-z\s]/会匹配"my 3 sisters"中的"3"
- 1
- 1
这里的”^”的意思是字符类的否定,上面的正则表达式的意思是匹配不是(a到z和空白字符)的字符。
以前总是搞不懂,什么时候”^”是否定字符,什么时候是匹配开始行,然后就查资料进行对比,终于发现了规律。
/[(^\s+)(\s+$)]/g(^cat)$(^cat$)^(cat)$^(cat$)
- 1
- 2
- 3
- 4
- 5
- 1
- 2
- 3
- 4
- 5
上面这个正则表达式中”^”就是限定开头的意思
这些正则表达式中”^”表示的就是表示字符类的否定。
[^a]表示“匹配除了a的任意字符”。[^a-zA-Z0-9]表示“找到一个非字母也非数字的字符”。[\^abc]表示“找到一个插入符或者a或者b或者c”。[^\^]表示“找到除了插入符外的任意字符”。(呕!)
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
经过对比,我发现了只要是”^”这个字符是在中括号”[]”中被使用的话就是表示字符类的否定,如果不是的话就是表示限定开头。我这里说的是直接在”[]”中使用,不包括嵌套使用。
其实也就是说”[]”代表的是一个字符集,”^”只有在字符集中才是反向字符集的意思。
阅读全文
0 0
- 正则表达式中的"^"这个符号的一些思考
- 正则表达式中的"^"这个符号的一些思考
- 正则表达式中的"^"这个符号的一些思考
- 正则表达式常见的一些符号含义
- 正则表达式常见的一些符号含义
- java 正则表达式的一些符号
- python中的正则表达式符号
- 正则表达式的使用及一些符号的意思
- pyton正则表达式的一些符号以及模式
- 关于lua正则表达式的一些诡异表现和思考
- javaScript中的一些 正则表达式 的基础知识。
- C#中的正则表达式的一些细节
- js 中的一些常见的正则表达式
- 正则表达式中的符号以及它们所代表的意思
- js正则表达式符号和一些练习题
- 正则表达式的符号详解
- 正则表达式中的符号和preg_match()
- 正则表达式中的符号和preg_match()
- JS延迟加载的方式
- Java:对象克隆(Clone)及Cloneable接口、Serializable接口详解
- vi的使用--使用vi查找和替换
- MySQL5.6的10053,CBO如何选择执行计划
- hive中null值得查询
- 正则表达式中的"^"这个符号的一些思考
- IOS移动操作系统开发入门介绍(书本教学式)
- (树状数组)KiKi's K-Number -- HDOJ
- 七、输入/输出流-- 七、输入/输出流--基于字符串的流---basic_istringstream 模板
- 极简版nosql
- 前端解决跨域问题的8种方案
- ajax跨域的问题
- layoutAnimation
- 不规范的英文名字编程首字母大写