什么是正则表达式以及它们如何有用?

时间:2010-07-08 16:43:45

标签: regex

  

可能重复:
  Useful Regular Expression Tutorial

您好,

我最近开始使用javascript进行编码。

我在搜索(goolgling)以验证表单(姓名,电子邮件ID等)时遇到了“正则表达式”

有人可以通过解释来帮助这个新手编码器:

  1. 什么是正则表达式?
  2. 它们如何在编程中有用?
  3. 他们是否易于理解?
  4. 我在哪里可以获得一些很好的参考资料?
  5. 非常感谢任何帮助。

    谢谢!

6 个答案:

答案 0 :(得分:8)

  

1)什么是正则表达式

“正则表达式(简称regex或regexp)是一个用于描述搜索模式的特殊文本字符串。您可以将正则表达式视为类固醇上的通配符。您可能熟悉通配符,例如* .txt来查找文件管理器中的所有文本文件。等效的正则表达式为.*\.txt$.

  

2)它们如何在编程中有用

非常

  

3)它们是否易于理解

这取决于。它们的范围从简单到理解到几乎无法理解。

  

4)我在哪里可以获得一些很好的参考资料来学习这些

这是一个非常好的起点:http://www.regular-expressions.info/

答案 1 :(得分:3)

1)和2)很容易查找...你试过Wikipedia?它们非常有用,我发现自己一次又一次地使用它们。

3)取决于正则表达式本身的复杂性和正则表达式的知识

4)资源:

等...只是google it;)

快乐编码

答案 2 :(得分:0)

答案 3 :(得分:0)

最好的办法是在Wikipedia之类的地方阅读它们,然后使用在线工具试用它们。我没有长时间使用正则表达式,但发现像stackoverflow这样的地方会在你遇到困难时解决问题,并且大部分时间它都知道正则表达式是否正确使用然后找到你的例子之后,让它为你工作。

在线正则表达式测试人员: - http://www.regular-expressions.info/javascriptexample.htmlhttp://www.fileformat.info/tool/regex.htm或 谷歌会向您显示更多内容。

如果你在Windows上是正则表达式的一个很好的工具Expresso这已经在示例中进行了尝试,它还会向您显示正则表达式的细分,以便您可以看到它匹配的内容。最近一位同事给我看的另一个很好的功能是它可以为你输入的正则表达式生成源代码(C#或VB) - 节省时间!也许值得购买一本关于这个主题的书我听说this书很好,还有很多其他书都有很好的建议。

答案 4 :(得分:0)

regular expression是有限状态机文本解析器的文本表示,至少可以使用它:

  • 验证文字
  • “punch”文本(获取某些预定义的插槽)
  • 操纵文字

答案 5 :(得分:0)

2)它们如何在编程中发挥作用 -

需要字符串匹配或解析的任何地方。

验证电子邮件或电话号码输入字段的格式

它们在搜索日志以查找特定行(例如awk或gawk工具)时也很有用。