REEC是一个精简,高效的C语言正则表达式引擎,它使得C语言开发中支持正则表达式,目前已经进化到了1.2.0版本,可以说无论从功能上,还是效率都到达了很好的应用水平,该引擎除支持常用的正则标准之外,还有一些原创的特性,例如正则式的分组、模式敏感等级等等,使得正则表达式更加灵活多变。
编者:
这套正则表达式适用于内存稀少的嵌入式系统,从09年应用至今,据我们所了解的REEC已经在商用产品中做到了千万终端的应用,性能跟稳定性已经过了市场考验。
引擎特性
<(a-zA-Z){1,}>含义:至少匹配1个,并且至多匹配n个字母。
<(0-9)^1> 含义:匹配1个数字。
<(0-9)^> 含义:匹配n个数字。
<(0-9){1,1}> 含义:至少匹配1个,并且至多匹配一个数字。
<(0-9){1,}> 含义:至少匹配1个,并且至多匹配n个数字。
<(symbol)^1> 含义:匹配1个symbol,symbol长度跟取值范围不限。
<(symbol)^> 含义:匹配n个symbol,symbol长度跟取值范围不限。
<(symbol){1,1}> 含义:至少匹配1个,并且至多匹配一个symbol,symbol长度跟取值范围不限。
}> 含义:至少匹配1个,并且至多匹配n个symbol,symbol长度跟取值范围不限。
<()^1> 含义:匹配1个任意字符。
<()^> 含义:匹配n个任意字符。
<(){1,1}> 含义:至少匹配1个,并且至多匹配一个任意字符。
<(){1,}> 含义:至少匹配1个,并且至多匹配n个任意字符。
<(a-z0-9)^1> 含义:匹配1个小写字母或数字。
<(a-z0-9)^> 含义:匹配n个小写字母或数字。
<(a-z0-9){1,1}> 含义:至少匹配1个,并且至多匹配一个小写字母或数字。
<(a-z0-9){1,}> 含义:至少匹配1个,并且至多匹配n个小写字母或数字。
<(A-Z0-9)^1> 含义:匹配1个大写字母或数字。
<(A-Z0-9)^> 含义:匹配n个大写字母或数字。
<(A-Z0-9){1,1}> 含义:至少匹配1个,并且至多匹配一个大写字母或数字。
<(A-Z0-9){1,}> 含义:至少匹配1个,并且至多匹配n个大写字母或数字。
<(a-zA-Z0-9)^1> 含义:匹配1个字母或数字。
<(a-zA-Z0-9)^> 含义:匹配n个字母或数字。
<(a-zA-Z0-9){1,1}> 含义:至少匹配1个,并且至多匹配一个字母或数字。
<(a-zA-Z0-9){1,}> 含义:至少匹配1个,并且至多匹配n个字母或数字。
例子
表达式:[<(哈哈你好)1>|<(你好哈哈)1><(0-9)*>][<(哈哈)1>|<(你好)1><(0-9)>][<(0-9)^>]
模式串:"54233你好23322323sdafashaha323hasdf你,本次哈哈你好你好哈哈123456哈235"
返回值:“123456”
其它
RO+RW段共10KB。
RAM
项目主页:http://code.google.com/p/reec/
下载地址:https://reec.googlecode.com/svn/trunk/
来自:开源中国社区

