2011-06-07 8 views
10

necesito expresiones regulares para buscar cadena para alphanumeric, (,), -, .,/and ampersand(&).expresión regular para que coincida con carácter alfanumérico y comercial (&)

En este momento im usando esta expresión regular en la validación del lado del cliente

[^A-Za-z0-9.)(/-\&] 

EDIT:

Quiero buscar mi cadena para caracteres especiales VAL.search(/[^A-Za-z0-9.)(/-\&]+/g)==-1

+0

necesita aclarar lo que quiere. En tu pregunta, dices que quieres unir estos caracteres '() -./& a-zA-Z0-9' y posiblemente estés diciendo que realmente quieres unir cualquier cosa que NO sean estos personajes. ¿Quieres hacer coincidir '^'? ¿Quieres unir '\'? –

+0

En la validación de jquery, quiero buscar en mi cadena caracteres alfanuméricos y especiales que no sean (, .-/&) p. Ej. cadena como "b & g (54.4kg/m)". Si alguien ingresa un carácter especial distinto al especificado arriba, mi función devolverá falso. mi código para buscar cadena es VAL.search (/ [^ A-Za-z0-9.) (/ - \ &] +/g) == - 1 – key2

Respuesta

12

Escape the backslash, pu el guión al final de la clase de personaje.

[^A-Za-z0-9.)(/\\&-] 

No sé por qué incluiste ^, ya que esto anula la clase de caracteres.

+0

debería estar escapando barra diagonal, no barra diagonal inversa. También necesita escapar de punto y paréntesis –

+1

@Billy: No. La barra diagonal no tiene un significado especial en expresiones regulares, y más aún no tiene un significado especial en las clases de caracteres. – Tomalak

+0

incluyen^porque quiero buscar en mi cadena caracteres especiales VAL.search (/ [^ A-Za-z0-9.) (/ \\ & -] +/g) == - 1 pongo el tablero en el final de mi cadena, pero no está funcionando. por favor ayuda – key2

2

Prueba esto:

VAL.search(/[^a-zA-Z0-9.()/&-]/g) == -1 
+2

Los únicos caracteres que deben escaparse en una clase de caracteres son '\', ']' (y '^' a menos que lo coloque en el medio en alguna parte). – Tomalak

+1

@Tomalak y '-' a menos que sea el último personaje de la clase. –

Cuestiones relacionadas