Javascript – RegEx match exactly 4 digits

javascriptregex

Ok, i have a regex pattern like this /^([SW])\w+([0-9]{4})$/

This pattern should match a string like SW0001 with SW-Prefix and 4 digits.

I thougth [0-9]{4} would do the job, but it also matches strings with 5 digits and so on.

Any suggestions on how to get this to work to only match strings with SW and 4 digits?

Best Solution

Let's see what the regex /^([SW])\w+([0-9]{4})$/ match

  1. Start with S or W since character class is used
  2. One or more alphanumeric character or underscore(\w = [a-zA-Z0-9_])
  3. Four digits

This match more than just SW0001.

Use the below regex.

/^SW\d{4}$/

This regex will match string that starts with SW followed by exactly four digits.