Quiero usar JavaScript (puede ser con jQuery) para hacer una validación del lado del cliente para verificar si una cadena coincide con la expresión regular:
^([a-z0-9]{5,})$
Idealmente, sería una expresión que devuelve verdadero o falso.
Soy un novato en JavaScript, ¿ match()
hago lo que necesito? Parece comprobar si parte de una cadena coincide con una expresión regular, no con todo.
javascript
regex
match
Ricardo
fuente
fuente
Respuestas:
Use
regex.test()
si todo lo que quiere es un resultado booleano:... y podría eliminar el
()
de su expresión regular ya que no necesita una captura.fuente
test()
Método de uso :fuente
RegExp
permite inyectar valores variables en la cadena de expresiones regulares.new RegExp("^([a-z0-9]{5,})$")
para que funcioneTambién puedes usar
match()
:Pero
test()
parece ser más rápido como puedes leer aquí .Diferencia importante entre
match()
ytest()
:match()
funciona solo con cadenas, perotest()
también funciona con enteros.fuente
match
miembro). Recomiendo convertir explícitamente su número a una cadena si desea usarlo con una expresión regular (String(123)
por ejemplo).test
es un 30% mejor cuando solo queremos validar una cadena para que coincida con la expresión regular y no extraer subcadenas de ella.Úselo
/youregexp/.test(yourString)
si solo desea saber si su cadena coincide con la expresión regular.fuente
Aquí hay un ejemplo que busca ciertas etiquetas HTML para que quede claro que
/someregex/.test()
devuelve un valor booleano:fuente
fuente
Puedes probar esto, funciona para mí.
fuente
por favor prueba esta flor:
fuente
tratar
Mostrar fragmento de código
fuente
0-9
se puede reducir aaaaaaaaaaaaaaaaaaaaaaaaaaaaa\d
. Ah, y que un grupo de captura no es necesario.Recomendaría usar el método execute que devuelve nulo si no existe una coincidencia; de lo contrario, devuelve un objeto útil.
fuente
fuente