正则表达式必知必会
2016-04-01 02:34
260 查看
作者:Ben Forta——世界著名专家、Aodbe技术界知名专家,《SQL必知必会》、《MySQL必知必会》作者。
用途:搜索、替换;
由正则语言创建,嵌入到其他语言或软件产品中的“迷你”语言;
语法较简单真正的挑战是解决实际的问题;
默认只返回第一个匹配结果,但都有获取全部的机制。比如JavaScript里,可选的g(意思是global,全局)标志将返回一个包含着所有匹配结果数组;
默认区分大小写,但都支持不区分的方式。比如JavaScript可用i标志来强制执行一次不区分字母大小写的搜索。
a-z,匹配从A到Z的所有小写字母;
A-z,在ASCII中,从字符A到z的所有字符。注意:此模式不常用,因为它还包含[和^等在ASCII字符表里排列在Z和a之间的字符。
[0-9]的功能与[0123456789]完全相同。
注意:\r\n匹配一个“回车+制表”组合,这是Windows系统文本行结束标签。Unix和Linux系统只使用一个换行符结束一个文本行。同时适用于Windows、Unix和Linux系统的正则表达式应该包含一个可选的\r和一个必须的\n。
配套的工具:
Regular Expression Tester(正则表达式测试器)
https://regex101.com/
http://www.regexpal.com/
1. 概述:
正则表达式(regular expression,简称regex);用途:搜索、替换;
由正则语言创建,嵌入到其他语言或软件产品中的“迷你”语言;
语法较简单真正的挑战是解决实际的问题;
默认只返回第一个匹配结果,但都有获取全部的机制。比如JavaScript里,可选的g(意思是global,全局)标志将返回一个包含着所有匹配结果数组;
默认区分大小写,但都支持不区分的方式。比如JavaScript可用i标志来强制执行一次不区分字母大小写的搜索。
2. 正则表达式字符含义:
字符 | 说明 |
---|---|
. | 匹配任何一个单个字符,如果必须需要一个“. ”,则需要\转义。 |
\ | 是一个元字符(metacharacter,表示“这个字符有特殊含义,而不是字符本身含义”)。在匹配它本身的时候,必须把它转义为\\。 |
[] | 字符集合,其内可存放ASCII字符表里的任意字符,至少匹配集合中任意一个字符。 |
- | 在字符集合中作为连字符,其他时候只是一个普通字符,无须转义。 |
^ | 取非匹配。 |
对“-”如何使用的简单说明:
A-Z,匹配从A到Z的所有大写字母;a-z,匹配从A到Z的所有小写字母;
A-z,在ASCII中,从字符A到z的所有字符。注意:此模式不常用,因为它还包含[和^等在ASCII字符表里排列在Z和a之间的字符。
[0-9]的功能与[0123456789]完全相同。
3. 空白元字符:
元字符 | 说明 |
---|---|
[\b] | 回退(并删除)一个字符(Backspace键) |
\f | 换页符 |
\n | 换行符 |
\r | 回车符 |
\t | 制表符(Tab键) |
\v | 垂直制表符 |
4. 数字元字符:
元字符 | 说明 |
---|---|
\d | 任何一个数字,等价于[0-9]。 |
\D | 任何一个非数字,等价于[^0-9]。 |
Regular Expression Tester(正则表达式测试器)
https://regex101.com/
http://www.regexpal.com/
5. 参考文档
正则表达式所有元字符及其使用方法一览表相关文章推荐
- C#正则表达式Regex类的常用匹配
- 详解C#正则表达式Regex常用匹配
- C#正则表达式Regex类用法实例分析
- 使用正则Regex来移除网页的EnableViewState实现思路及代码
- 正则表达式(regex)或操作符”|“使用易出现功能Bug
- C++ 0x regex实现关键OR敏感字过滤
- 正则转义
- boost::regex简单用法
- ext4 Ext.form.field的regex
- 正则表达式小记
- 正则表达式 Mather类的使用
- centos安装devtoolset-3支持gcc 4.9.2
- JAVA自动生成正则表达式工具类
- JAVA中正则表达式总结
- JAVA 正则表达式 (超详细) .
- zhengze......
- 寒假学习1:正则表达式
- 带行号的RichTextBox(C#)
- C#字符串处理
- GenSQLFromExcel--DirList