jQuery Validate で通貨をチェックするための「完璧な」正規表現を見つけたと思いますが、ユーザーが末尾に 1 つの小数点または 1 桁の小数点を置くことを許可しているようです。
一致: 700. および 3.0
正規表現:
^\$?([1-9]{1}[0-9]{0,2}(\,[0-9]{3})*(\.[0-9]{0,2})?|[1-9]{1}[0-9]{0,}(\.[0-9]{0,2})?|0(\.[0-9]{0,2})?|(\.[0-9]{1,2})?)$
http://gskinner.com/RegExr/で遊んでいますが、小数の問題を修正するために適切な場所で変更できないようです。
現在、必要なものすべてに一致します:
700,000 700,000.00 700000
興味のある方のために、@Kolink の正規表現を使用した jQuery バリデータ addMethod を次に示します。
jQuery.validator.addMethod("currency", function(value, element) {
return this.optional(element) || /^\$?(?=.)(?:[1-9]\d{0,2}(?:,?\d{3})*)?(?:\.\d{2})?$/.test(value);
}, "Please enter a valid number.");