Linux下的正则表达式的详细解决方案,BRE和ERE的异同

Linux下的正则表达式的详细解决方案,BRE和ERE的异同
Linux正则表达式(Regular Expression)主要遵循POSIX BRE或POSIX ERE标准。什么是POSIX便携式操作系统接口的可移植的操作系统接口,这是一个扩展版本的BRE,更强大的处理能力,并增加了一些元字符(metacharactor)。

BRE的主要能力集:

1)普通字符(文字文本),如A、B、C等。

2)非打印字符,包括制表符、回车符、更改行和返回行(Windows)。

3)任何字符。

4)字符集,包括文字型性格(不alnum:} }),一个非单词字符({ ^ {:alnum:} })、数字(不是数字:} }),非数字({ ^ {:alnum:} })、标签、空间、线空间特征(不是空间:} })和非空白字符({ ^ {:空间:} })

5)边缘匹配,无论是BRE或ERE,只支持,开始或结束的线,不像Perl,也可以搭配的词和一个单词的结尾

6)匹配重复时间(量词/重复)

7)分组和向后引用

8)、数(改变),利用|特征元素,特点等的支持,是不具备此功能

无论是BRE在似乎支持ASCII和Unicode仍有待证实;

不支持正向查找和负前向查找。

不支持向后查找和负向后查找。

BRE在只有在多个匹配的能力之间的差异,并没有在其他方面没有太大的差异。主要区别在于元字符。

那只定义了4组分特征:

{ }为选定一个字符在匹配的字符数,可以有一个范围的{ },但本身并不是一个元字符

用于匹配任何字符

用来表示非匹配的意思,用法是匹配行。

在终点线,为$

在此基础上增加了3个组件字符的定义:

Used to express repetition, {}.BRE will only treat {} as ordinary characters, to use this function must be escape, namely {}

()用于分组。在BRE,只有()被视为一个共同的特点。要使用此函数,必须添加

|完全为一批新的ERE,定义的能力,一批配套能力不勇敢,只有|作为普通字符处理

以上是详细描述了Linux正则表达式特征和BRE等之间的区别。希望你能喜欢。
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部