2010-09-14 29 views
9

Necesito escribir una expresión regular para RegularExpressionValidator ASP.NET Web Controls.Expresión regular para que coincida solo con las letras

La expresión regular debe permitir que todos los caracteres alfabéticos, pero no números o caracteres especiales (ejemplo: |! "£ $% & /()

alguna idea de cómo hacerlo

Respuesta

15
^[A-Za-z]+$ 

valida una cadena de longitud 1 o mayor, que consiste solamente en letras ASCII.

^[^\W\d_]+$ 

hace lo mismo para las letras internacionales, también.

Explicación:

[^ # match any character that is NOT a 
\W # non-alphanumeric character (letters, digits, underscore) 
\d # digit 
_ # or underscore 
] # end of character class 

Efectivamente, se obtiene \w menos (\d y _).

O bien, puede utilizar el hecho de que ASP.NET es compatible con Unicode propiedades:

^\p{L}+$ 

valida una cadena de letras Unicode de longitud 1 o más.

+0

Gran respuesta; para complementarlo: '\ p {Ll}' solo coincide con letras minúsculas, y '\ p {Lu}' solo mayúsculas. – mklement0

3

Puede usar.? la expresión regular:

^[a-zA-Z]+$ 

Explicación:

  • ^: Inicio anclaje
  • [..]: clase Char
  • +: uno o más repetations
  • $: Fin de anclaje
7

espacios entre ellas:

"^[a-zA-Z ]*$" 

Espacios excluyendo:

"^[a-zA-Z]*$" 

Para que sea no opcional, cambie el * a un +

Cuestiones relacionadas