2010-10-28 53 views
1

我从来没有使用正则表达式之前,并计划用它来解决我的问题,但不能肯定是否可以帮助我。在C#中的正则表达式,这可能吗?

我有一个情况我需要存储的规则或公式来样订做下面的示例数据库中的字段,则检索该规则,并建立字符串值的字符串值。

  • FacilityCode +左(ModelNO,2)
  • 右(PO,3)+左(串行,2)

这是可以实现的使用.NET正则表达式?任何好的教程或这个问题的简单例子。

+8

正则表达式用于模式匹配 - 这看起来不太适合他们。 – Oded 2010-10-28 15:12:15

回答

2
+1

大概一个查找单词和switch语句的循环会效率一样,看看http://en.wikipedia.org/wiki/Polish_notation – ykatchou 2010-10-28 15:26:55

+0

我同意,正则表达式不是这个的好选择。我正在考虑构建自己的解析器来构建和读取公式。它将成为提供基本字符串功能的简单解析器。 – BaLs 2010-10-28 19:43:33

2

它可能会更好一些代码的随机字符串发生器。正则表达式用于搜索不创建数据的数据。

要记住的正则表达式的事情是,它像一艘航空母舰;它做得非常好,它根本不会做其他工作。

航空母舰移动飞机很好的海洋;它不会很好地制作芝士三明治!

也就是说,如果使用正则表达式时,你不应该,你几乎肯定会使用远远更多的处理能力比你用于该作业的另一种工具。 Html解析让人想起

1

正则表达式是作为System.Text.RegularExpressions的一部分,但你不能在它完全依赖。它可以让你搜索现有的字符串,但是你需要根据你在现有数据中找到的内容来实现自己的逻辑来构建新的字符串。

另外,请记住System.Text.RegularExpressions与Perl和其他实现中的regexp不同。例如,它不识别POSIX字符类定义。

由于您刚刚接触过正则表达式,因此您可能需要在zytrax.com上查看the "Regular Expressions User Guide"。这不像O'Reilly手册那么全面,但它会作为一个开始。