任何好的正则expression式创build软件或在线工具创build正则expression式
有没有人有任何良好的链接到一个网站或一个很好的工具来创build正则expression式,而不是打破你的头来创build一个。 该工具应该能够通过简单地select某种模式文本来创build正则expression式。 例如,如果我想要一个电话号码进行validation,我应该可以input(000) – (111) – (1111)或000-000-0000或000-0000000,工具shold会自动生成正则expression式。
这是一个很好的在线正则expression式工具: http://www.gskinner.com/RegExr/
我使用Rubular 。 这不仅仅是为了Ruby。
创build正则expression式而不用任何关于它们的线索是行不通的。 但是你可以使用帮助你创build它们的软件。 我听说regexbuddy应该是相当不错的。
编辑
为什么从任意string创build正则expression式无法正常工作的原因可以在这个问题的答案中find
Expresso有一个正则expression式的GUI生成器。
但是我build议你花点时间学习正则expression式 – 你将能够比使用助手构build器更快地创buildexpression式
编辑:但它仍然不会读你的想法。 你需要一块一块地构build正则expression式..因为我需要3位数然后 – 等等…它不能猜测你需要一个电话号码给定匹配的string
得给refiddle.com一个尝试。 他们的语料库testing使得为一组已知的数据devise模式变得非常简单。 你可以testingruby,.NET和JavaScriptexpression式。
我也是RegexBuddy的忠实粉丝,但是如果你在预算紧张的情况下工作,你也可以使用开源(免费)工具Kodos 。 它最初devise用于为Pythondebugging和创build正则expression式,但您可以使用它来validation任何正则expression式。
当然,它仍然依赖于你真正知道如何构造正则expression式,但至less你可以用它来validation或testing你有什么。
正则expression式教练帮了我很多 – 它支持几乎所有正则expression式的复杂性。 你实时看到你的修改如何在string上进行操作; 也具有分析树的可视表示。
如果您使用的是Eclipse,那么Sergey Evdokimov的Regex Util就是一种乐趣。 它就在你的IDE中,所以你不会失去它,并提供对比赛的即时反馈。 然后,当您将其复制并粘贴到您的代码中时,它会完成所有转义/转义。
我更喜欢使用www.txt2re.com
他们有很多好东西来为许多不同的语言创build正则expression式语法。
希望它可以帮助别人:)
我很惊讶没有人提到过Regexlib
http://rgx-extract-replace.appspot.com提取捕获的组并将其格式化为不同的列。; 还提供了简单的replace。
人脑将比任何RegexBuddy创build更好,更可读的正则expression式。 不pipe多less软件可以帮助您开发更快的正则expression式,这些正则expression式都会遇到以下几个问题:
- 他们可能会看起来非常糟糕,强制正则expression式的想法是只写的。
- 他们可能会效率低下,并使用怪异/不必要的解决scheme。
- 你不会理解正则expression式中发生了什么,这意味着你将成为一个货运邪教程序员。
最后,学习正则expression式会使你成为一个更好的程序员 – 你将能够阅读其他人的代码并理解它的作用,以及能够在飞行中编写自己的正则expression式,这通常会比停止你的编码工作stream程,转向一些外部程序,提出一个应该通过或失败的testing用例列表,然后将生成的正则expression式复制粘贴到你的代码中,而不知道它是干什么用的。
我喜欢RegexPal中的突出显示和附加function。 这是一个免费的networking工具,有一个快速参考,方便访问。 你甚至可以注意到,他们推荐RegexBuddy提供更多的function,但是你仍然可以在Web应用中findRegexBuddy的function。