正则表达式模式中的可选部分

本文关键字:选部 模式 正则表达式 | 更新日期: 2023-09-27 18:01:01

我有以下字符串来处理

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

我想从他们那里得到美元现在我正在使用下面的正则表达式模式

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

但是它与第一示例不匹配。我应该更改什么来制作。''d{1,2}部分可选?谢谢

正则表达式模式中的可选部分

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

(?:...)是非捕获组,下面的?使该组成为可选组。