Assistance with Javascript Regular Expression

Hello.

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.

/[2]\d[\d\s\'\,]$/

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\'\, ↩︎