正则表达式-字符类
来源:互联网 发布:2017年淘宝新规则 编辑:程序博客网 时间:2024/05/16 04:54
字符类是对通配符概念的改进。我们可以列出要匹配的字符,而不是匹配特殊位置的任意字符。使用方括号元字符( [] )将字符列表括起来,其中每个字符占据一个位置。
字符类在处理大写和小写字母时非常有用。例如,如果"what" 可能以首字母大写或小写的形式出现,则可以指定:
这个正则表达式可以匹配"what" 或"What" 。它匹配包含这4个字符的字符串的任意行,第一个字符是"W" 或"w" 。因此,它可以匹配"Whatever" 或"somewhat" 。
如果一个文件中包含结构化的标题宏,例如: .H1, .H2, .H3,等等,那么可以用下面的正则表达式提取这些行中的任意一行:
这一模式匹配包含3个字符的字符串,最后一个字符是从1到5的任意数字。UNIX shell使用相同的语法,因此,可以使用字符类在UNIX命令中制定文件名。例如,为了从一组由章组成的文件中提取标题可能要输入:
ch01:.H1 "Contents of Distribution Tape"
ch01:.H1 "Installing the Software"
ch01:.H1 "Configuring the System"
ch01:.H2 "Specifying Input Devices"
ch01:.H3 "Using the Touch Screen"
ch01:.H3 "Using the Mouse"
ch01:.H2 "Specifying Printers"
ch02:.H1 "Getting Started"
ch02:.H2 "A Quick Tour"
.
.
注意必须用引号引住其中的模式,以便把它传递给grep而不只是由shell解释。由grep产生的输出为每个要打印的行都标识了文件名。作为字符类的另一个实例,假设想要指定不同的标点符合来结束句子:
这个表达式匹配"任意后面有一个感叹号、问号、分号、冒号、逗号、引号或句点,随后是两个空格和任意一个字符"。它可以用于寻找在一个句子的结束和另一个句子的开头之间有两个空格的地方(当一行中有这种情况时)。注意:在这个表达式中有3个点,第一个和最后一个点是通配符元字符,但是第二个点解释为字面意义。在方括号中、标准的元字符会失去它们的含义。因此,方括号中的点表示一个句点。下表列出了方括号中具有特殊含义的字符。
参考资料:http://www.linuxawk.com/communication/415.html
- 正则表达式--字符类
- 正则表达式-字符类
- 正则表达式 字符类
- 正则表达式之字符类
- 正则表达式-字符类
- 正则表达式中的字符类
- 正则表达式学习记录-字符类
- Linux正则表达式-排除字符类
- Linux正则表达式-POSIX字符类
- 正则表达式——POSIX字符类
- 正则表达式一字符
- 正则表达式字符匹配
- 正则表达式的字符
- 正则表达式--元字符
- 正则表达式--字符转义
- 正则表达式特殊字符
- 特殊字符正则表达式
- 正则表达式 字符描述
- poj 2240 Arbitrage 【最短路】 【更新:用STL map处理字符串】
- Largest Number 拼凑成最大的数
- MVC
- 浮点数四舍五入保留2位小数
- UISearchBar和UISearchDisplayController
- 正则表达式-字符类
- 反抗这个世界的贱人
- 黑马程序员---自定义一个带行号的缓冲区对象
- Android基础之使用Fragment控制切换多个页面
- 题目1524:复杂链表的复制
- QLocalSocket和QLocalServer的简单使用
- 内核同步
- POJ 1293 Duty Free Shop(背包记录路径)
- spss安装代码