Domanda

I got Invalid range in character class issue when trying to use regex

/^[a-zA-Zа-яА-ЯЁё0-9_-\s]{6,20}$/

But the issue is only in Firefox, in Chrome it's ok.

With this regex I am trying to say "only latin, russian letters, numbers, space and '_' and '-' signs allowed"

È stato utile?

Soluzione

The _-\s is creating a range between the underscore and space characters. You need to either escape the - as in _\-\s or put it at the end:

[a-zA-Zа-яА-ЯЁё0-9_\s-]

Also beware of the а-я range. If this is the same as the Latin 1 a the range may not be what you expect at all.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top