linux正则表达式处理文本
2014-01-18 15:36
381 查看
Linux提供了许多用于文本处理的工具,像sed、awk、perl、python可以自动编辑多个文件,提供了广泛的文本处理能力。这些工具和其他工具能理解一种松散定义的模式语言。该语言以及模式本身被统称为正则表达式(regular expressions)。正则表达式优点类似文本通配,但包含了更多的特殊字符。
正则表达式由排列文本字符串或模式定义。这些模式是由两种类型的字符组成:原义字符(纯文本)和元字符组成。
如同shell中的通配符,正则表达式元字符在使用它们的工具环境中有特殊的含义。完整的元字符类表如下:
注意不要将其与前面锚字符^字符混淆。
在shell里也有*,但是那里是通配符,shell中 vi hello.*匹配.c、.o、.s等最后一个或几个字符不同的文件,而grep 'hello.*' hello.c则是匹配hello后接任意0个或多个字符的字符表达式。
如果把正则表达式比喻成语言,则原义字符就像语言里的单词或词组。元字符的用法就相当与语言的“语法”。当你构建正则表达式时,其实就是在使用元字符与原义字符来定义输入文本的3个基本概念:位置锚点,字符集合,数量修饰符。正则表达式主要应用于awk,sed,grep等处理文本的应用中。
正则表达式由排列文本字符串或模式定义。这些模式是由两种类型的字符组成:原义字符(纯文本)和元字符组成。
如同shell中的通配符,正则表达式元字符在使用它们的工具环境中有特殊的含义。完整的元字符类表如下:
注意不要将其与前面锚字符^字符混淆。
在shell里也有*,但是那里是通配符,shell中 vi hello.*匹配.c、.o、.s等最后一个或几个字符不同的文件,而grep 'hello.*' hello.c则是匹配hello后接任意0个或多个字符的字符表达式。
如果把正则表达式比喻成语言,则原义字符就像语言里的单词或词组。元字符的用法就相当与语言的“语法”。当你构建正则表达式时,其实就是在使用元字符与原义字符来定义输入文本的3个基本概念:位置锚点,字符集合,数量修饰符。正则表达式主要应用于awk,sed,grep等处理文本的应用中。
相关文章推荐
- Linux 与 Windows 对UNICODE 的处理方式
- Ubuntu12.04下QQ完美走起啊!走起啊!有木有啊!
- 解決Linux下Android开发真机调试设备不被识别问题
- 运维入门
- 运维提升
- Linux 自检和 SystemTap
- Ubuntu Linux使用体验
- c语言实现hashmap(转载)
- Linux 信号signal处理机制
- linux下mysql添加用户
- msql 正则表达式
- 正则表达式
- Scientific Linux 5.5 图形安装教程
- 基于 Linux 集群环境上 GPFS 的问题诊断
- 谁是桌面王者?Win PK Linux三大镇山之宝
- vivi下重新调整分区
- Linux VS Unix:Linux欲一统天下 Unix不死
- linux下设定环境变量
- Linux下修改MySQL编码的方法