2008-08-14 110 views
8

有没有人使用他们喜欢使用的好的正则表达式库?您在网上找到的大多数正则表达式都包含错误,或者专注于边缘案例,从而变成竞争,以验证100%的规格。当然你可以自己写,但是当你按小时计费时,可以方便地在图书馆附近。预构建的正则表达式模式或正则表达式库?

+0

这个问题太含糊。你指的是什么平台/语言?你还需要一个正则表达式编辑器/工具吗? – spoulson 2008-09-01 15:46:17

回答

2

RegexBuddy除了几乎是市面上最好的Regex工具之外,还有关于我所知道的唯一一个让你在不同的Regex渲染引擎中切换的工具。

http://www.regexbuddy.com/

见资讯:

http://en.wikipedia.org/wiki/RegexBuddy

使用RegexBuddy专有的正则表达式引擎允许软件模拟多种常用的正则表达式口味的规则和限制。

5

升压,对于C++

1

最近,我做在Perl我所有的文本解析。如果我需要另一种语言的正则表达式,我会用PCRE

PCRE库是一组实现正则表达式 图案使用相同的语法和语义匹配作为 Perl函数  5. PCRE有它自己的本地API,以及作为一组的包装 函数对应于POSIX正则表达式 API。 PCRE图书馆是免费的,即使是建立商业 软件。

PCRE最初被写为 ​​, 但现在许多高知名度的开源项目使用,包括 ApachePHPKDEPostfixAnalogNmap。 PCRE也进入了一些众所周知的商业产品,如 Apple Safari。 使用PCRE其他一些有趣的项目包括 ChickenFeriteOnyxHypermailLeafnodeAskemos, 和Wenlin

PCRE已经成熟,并得到众多项目的支持。阿帕奇和苹果都有使其成为高品质的既得利益。我怀疑任何其他的可再生能源库在功能和质量(或可能是任何时候)很可能会超过它。

-1

e-texteditor hilights在您键入时搜索的内容。这非常有用,因为您可以将“示例文本”粘贴到文件中,只需在搜索字段中输入正则表达式,并查看它在您面前的匹配情况。

这些“可视化正则表达式构建器”的东西都不能替代实际的LEARNING正则表达式。

0

提供通常请求的正则表达式的一个很好的来源是Perl的Regexp::Common

目前提供的模式为以下(从主页):

Regexp::Common::balanced 
Provides regexes for strings with balanced parenthesized delimiters. 

Regexp::Common::comment 
Provides regexes for comments of various languages (43 languages currently). 

Regexp::Common::delimited 
Provides regexes for delimited strings. 

Regexp::Common::lingua 
Provides regexes for palindromes. 

Regexp::Common::list 
Provides regexes for lists. 

Regexp::Common::net 
Provides regexes for IPv4 addresses and MAC addresses. 

Regexp::Common::number 
Provides regexes for numbers (integers and reals). 

Regexp::Common::profanity 
Provides regexes for profanity. 

Regexp::Common::whitespace 
Provides regexes for leading and trailing whitespace. 

Regexp::Common::zip 
Provides regexes for zip codes.