2013-02-23 37 views
0

我有以下字符串处理可选部分

Name ($4 USD) 
Name ($4.1 USD) 
Name ($4.12 USD) 
Name ($4123123.02 USD) 

我想从他们 现在我一个使用follwoing正则表达式模式

Regex regex = new Regex(@"\(\$(?<cash>\d+\.\d{1,2}) USD \)"); 

,但它不匹配美元大写金额第一个例子。我应该更改哪些内容以使。\ d {1,2}部件可选? 谢谢!

回答

3
Regex regex = new Regex(@"\(\$(?<cash>\d+(?:\.\d{1,2})?) USD \)"); 

(?:...)是一个非捕获基团,并且下面?使得该组可选的。