Быстрый поиск валютного regex вызывает множество результатов.
MSDN использует ^ -?\d + (\.\d {2})? $
Проблема при выборе одного из них заключается в том, что регулярное выражение трудно проверить без проверки всех случаев краев. Я мог бы потратить много времени на это, так как я уверен, что уже сделали сотни других разработчиков.
Итак... Кто-нибудь имеет регулярное выражение для валюты США, которая была тщательно протестирована?
Мое единственное требование состоит в том, что совпадающая строка - это U.S Currency и анализирует System.Decimal:
[ws][sign][digits,]digits[.fractional-digits][ws] Elements in square brackets ([ and ]) are optional. The following table describes each element. ELEMENT DESCRIPTION ws Optional white space. sign An optional sign. digits A sequence of digits ranging from 0 to 9. , A culture-specific thousands separator symbol. . A culture-specific decimal point symbol. fractional-digits A sequence of digits ranging from 0 to 9.