用多个逗号匹配价格

本文关键字:配价 | 更新日期: 2023-09-27 18:10:49

我想匹配其中有多个逗号的值。我只能用1个逗号来匹配值。正则表达式:('$'d+','d+)示例值:$567,76,但我需要匹配此值$567,76,87,但此正则表达式不起作用。

用多个逗号匹配价格

试试这个模式,也许会有所帮助。

^'$'d+(,'d+)*$

这将在上匹配

$567
$567,76
$567,76,87

但不是

$567,76,87,
  • Regex Demo(单击.Net按钮(

您可以使用double.Parse(currency, NumberStyles.Currency)而不是使用正则表达式来解析值。

这样尝试;

^'$'d+(,'d+)+$

一些随机匹配;

$1622,40,749
$37,5844

Regex r = new Regex(@"^'$'d+(,'d+)+$");
string[] partNumbers = { "$567,76", "$567,76,87", "$567,76,87," };
foreach (var i in partNumbers)
{
       Console.WriteLine("{0} {1} a valid part number.", i, r.IsMatch(i) ? "is" : "is not");
}

$567,76 is a valid part number.
$567,76,87 is a valid part number.
$567,76,87, is not a valid part number.

这是一个DEMO