¿La expresión regular ([A-Za-z] *) coincide con dígitos y caracteres especiales?

Necesito validar un campo de texto en mi aplicación. esto no puede contener ni dígitos ni caracteres especiales, así que probé esta expresión regular: [A-Za-z] * El problema es que esta expresión regular no funciona cuando pongo un dígito o un carácter especial en el medio o al final de la Cuerda.

preguntado el 09 de marzo de 12 a las 22:03

Demasiados duplicados de algo demasiado simple que no muestra ninguna investigación previa :( Bueno, dígame usted qué [A-Za-z]* significa en una expresión regular y luego te diré por qué no funciona .. -

4 Respuestas

Deberías usarlo así:

^[A-Za-z]+$

para hacer coincidir el texto (1 o más de longitud) que contenga solo letras ASCII.

respondido 09 mar '12, 22:03

Te saludo anubhava. Si tan solo hubiera ingresado 30 caracteres en el primer intento. - usuario287466

Es lo mismo con toda la comunidad SO aquí. A las personas se les ocurren respuestas bastante rápido para preguntas simples como esta. - anubhava

Sigue adelante y prueba ^[A-Za-z]*$ preferiblemente.

respondido 09 mar '12, 22:03

Puede utilizar la siguiente expresión regular:

Pattern p = Pattern.compile("^[A-Za-z]*$");

Ver una lista de especificaciones de expresiones regulares en http://docs.oracle.com/javase/1.4.2/docs/api/java/util/regex/Pattern.html

El patrón que describe nunca funcionará. Sin los enlaces de inicio y fin, el patrón buscará una subcadena que coincida. Dado que también se permite una cadena vacía (asterisco significa 0 o más caracteres), uno puede simplemente usar la cadena vacía en cualquier lugar.

respondido 09 mar '12, 22:03

¿Qué podemos agregar si queremos que la cadena acepte el carácter de espacio en el medio? - user1260270

un carácter de espacio? En ese caso, podría usar ^[A-Za-z]*( [A-Za-z]*)?$ - willem van onsem

estás chequeando ayúdame a validar fecha y hora tipo AAAA-MM-DDThh: mm: ss.sssZ o AAAA-MM-DD

^(((19|20)[0-9][0-9])-(0?[1-9]|1[012])-(0?[1-9]|[12][0-9]|3[01]))|(((19|20)[0-9][0-9])-(0?[1-9]|1[012])-(0?[1-9]|[12][0-9]|3[01])T([01]?[0-9])|([2][0123]):([012345]?[0-9]):([012345]?[0-9])\.([0-9][0-9][0-9][Z]))$

Respondido 21 ago 17, 04:08

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.