Currency validation

前端 未结 5 1684
滥情空心
滥情空心 2020-12-14 16:11

Please help with me writing a JavaScript Validation for currency/money field.

So please provide any regular expressions if u have :)

5条回答
  •  长情又很酷
    2020-12-14 17:11

    I built my answer from the accepted answer.

    var regex = /^[1-9]\d*(((,\d{3}){1})?(\.\d{0,2})?)$/;

    ^[1-9] The number must start with 1-9
    \d* The number can then have any number of any digits
    (...)$ look at the next group from the end (...)$
    (...)?(...)? Look for two groups optionally. The first is for the comma, the second is for the decimal.
    (,\d{3}){1} Look for one occurance of a comma followed by exactly three digits
    \.\d{0,2} Look for a decimal followed by zero, one, or two digits.

    This regex works off of these rules:

    • Valid values are numbers 0-9, comma and decimal point.
    • If a customer enters more than one decimal point or more than one comma, the value is invalid and will not be accepted.

    • Examples of invalid input values

      • 1.2.3
      • 1,2,4
    • Examples of valid input values
      • 1.23
      • 1,000
      • 3967.
      • 23
      • 1.2
      • 999,999.99

    An example can be seen here: http://jsfiddle.net/rat141312/Jpxu6/1/

    UPDATE

    by changing the [1-9] in the regex to [0-9] any number less than 1 can also be validated. Example: 0.42, 007

提交回复
热议问题