Regex: relaciona una cadena solo cuando contiene caracteres alfabéticos
Pregunta
cadenas de ejemplo
785*()&!~`a
##$%$~2343
455frt&*&*
Quiero capturar el primero y el tercero, pero no el segundo, ya que no contiene ningún carácter alfabético. Por favor, ayuda
Solución
De hecho, creo que [a-zA-Z]
podría ser suficiente para que coincida con tus cadenas.
Para capturar todo el asunto, intente: ^.*[a-zA-Z?.*$
Otros consejos
Aquí hay una manera posible:
.*[a-zA-Z]+
Tal vez deberías aclarar un poco lo que quieres decir con "catpuring": ¿quieres la cadena completa de solo los bits ascii?
Además, no dices si debe coincidir con el simple alfabeto romano (de la A a la Z) o si también debe coincidir con los caracteres de Unicode para que coincidan con cadenas en otros idiomas.
Si solo necesitas probar tu cadena, en C # harías:
bool matching = Regex.IsMatch(myString, "[a-zA-Z]");
No necesitarías nada más, ya que solo una letra en cualquier parte de la cadena myString
coincidirá (según tu definición).
Este es mi sitio de prueba RegEx favorito: Probador de Regexp de Javascript y hoja de trucos
Si desea hacer coincidir todas las letras (incluidas las que no son ascii), use p {L}
en lugar de [a-zA-Z]
. Consulte Categorías de Unicode .