2012-05-22 58 views
1

如何使用正则表达式从表达式$RetailTransaction.IsContainsTender(98)获得98使用.NET正则表达式在圆括号之间查找字符

+0

你吃过看看[.NET的正则表达式(http://msdn.microsoft.com/en-us/library/hs600312.aspx)? – stema

+1

是否正则表达式是任务的要求?如果这是字符串的不变格式,那么它肯定不是要求启用成功。 –

回答

9

在这种情况下像往常一样,你应该先问自己的数据将如何看起来像(比只举一个例子以上),并从什么它期望。

,最快的途径可能只是正则表达式

\d+ 

但是,如果有该行不是你想要的那些更多的数字,这将失败。

你可以采取括号考虑:

(?<=\()\d+(?=\)) 

本采用了回顾后和前向断言,这样的数字是完全匹配(而不是藏在一个捕获组)。

您还可以使用其他上下文,例如方法名称:

(?<=IsContainsTender\()\d+(?=\)) 

所有这些事情可以使正则表达式对不需要的数据可能意外匹配较为强劲,但是这是一个折衷只有你可以因为某种原因,我只有一个实例一起工作这里。如果你所需要的只是匹配一个98,那么98是一个有效的正则表达式,并按照上面的例子做你想要的。因此,我认为你应该认真考虑你想要匹配的案例,以及可能会给你带来过于简单的方法麻烦的案例。

+1

令人惊叹的答案@Joey。 ! – gout

相关问题