Assistance with Javascript Regular Expression


I have a javascript form validation routine which uses a regular expression to validate the input of a text box.

I need a regular expression which will require (anywhere in the input) at least 1 number, and the entire contents can also contain zero or more commas, apostrophes, and spaces.

The regular expression I’ve constructed is very close but does not quite work:

[1]*[0-9][0-9, *]$

It will not accept, for example, input of a single digit, but it will accept something such as “2*”.

How can I modify this to allow digits, commas, spaces, apostrophes, but also require at least 1 number?

Any help is appreciated.

  1. 0-9, * ↩︎

The info about optional expressions will help here, where you use a question mark to indicate optional parts of the expression.

I’ll review that material.

Thank you for the response.

The * inside the includes it as an acceptable character, just put it after.


For me it’s less ambiguous to use \s for spaces. The same for comma and apostrophe which don’t actually need to be escaped.

  1. 0-9, * ↩︎

  2. \d\s\'\, ↩︎

That appears to have remedied the issue. Thanks.

I will, of course, make use of the information at the link provided by PMW57. :cool:

  1. \d\s\'\, ↩︎