C# 如何使用此格式验证美国货币$123.45

C# 如何使用此格式验证美国货币$123.45,c#,asp.net,regex,validation,C#,Asp.net,Regex,Validation,我有一个网页,其中一个文本框接收美元价值。我的要求是用户应该在$sysmbol后面插入数字。第二个要求是,用户只能像这样插入$123.45。小数点前不得超过三位数,小数点后不得超过两位数。请提供适当的正则表达式来验证此值,以帮助我。。提前感谢。试试: \$\d{1,3}(\.\d{1,2})? \$=一美元,因其为特殊字符而转义 \d=一个数字;{1,3}=在1到3次重复之间 ()? = 可选组: \.=一个点(转义) \d{1,2}=一位或两位数字 要播放正则表达式(并测试它们),可以使用或

我有一个网页,其中一个文本框接收美元价值。我的要求是用户应该在$sysmbol后面插入数字。第二个要求是,用户只能像这样插入$123.45。小数点前不得超过三位数,小数点后不得超过两位数。请提供适当的正则表达式来验证此值,以帮助我。。提前感谢。

试试:

\$\d{1,3}(\.\d{1,2})?
\$=一美元,因其为特殊字符而转义
\d=一个数字;{1,3}=在1到3次重复之间
()? = 可选组:
\.=一个点(转义) \d{1,2}=一位或两位数字

要播放正则表达式(并测试它们),可以使用或类似的工具。

尝试:

\$\d{1,3}(\.\d{1,2})?
\$\d{1,3}\.\d{1,2}
\$=一美元,因其为特殊字符而转义
\d=一个数字;{1,3}=在1到3次重复之间
()? = 可选组:
\.=一个点(转义) \d{1,2}=一位或两位数字

要播放正则表达式(并测试它们),可以使用或类似的工具

\$\d{1,3}\.\d{1,2}

如果要强制最后一个小数点有两位数字


如果要强制最后一个小数点有两位数

如果不希望在货币之后或之前有东西,请使用^\$\d{1,3}(\.\d{1,2})?$$.59将不是此regexp的有效金额。我知道我经常从一开始就减去0,如果我不得不把它加进去的话,我会很生气。@I82MORGE:我觉得从这个问题来看,至少需要一个数字;顺便说一句,如果你不想在货币后面或之前有东西,我会很恼火的在金额前面加一个$。使用^\$\d{1,3}(\.\d{1,2})?$$.59将不是这个regexp的有效金额。我知道我经常从一开始就减去0,如果我不得不把它加进去的话,我会很生气。@I82MORGE:我觉得从这个问题来看,至少需要一个数字;顺便说一句,如果我不得不在金额前加上一美元,我会很恼火。。。