.NET regex spécifiques .net C# dataannotations

J'ai une expression régulière que j'essaie de comprendre pour un .NET Annotation de Données de Validation du modèle que j'utilise. Actuellement, il ressemble à ceci

[RegularExpression("^((?!City)[a-zA-Z '])+$", ErrorMessage = "City is required and must be properly formatted.")]

La première moitié de cette regex est de rendre compte de la Ville, la seconde moitié est de s'assurer que ses seulement les lettres et les espaces.

La valeur par défaut pour la zone de texte d'entrée est de la Ville, il suffit donc de "Ville de" je ne peux pas passer de validation. Je n'arrive pas à obtenir la première section de cette regex pour ces cas passent.

Cityville  
City City
Jersey City
Arizona City

Mais ce cas ne pas passer:

City

Toute aide serait grandement appréciée.

*MODIFIER*
Celui-ci fait l'affaire:

^((?!^La ville de dollars)[a-zA-Z])+$

J'ai mis à jour tous mes validation pour en tenir compte. Juste au cas où vous voulez voir ce que je fais. Ici, si le code de l'ensemble de données de validation du modèle que j'utilise. (mis à jour avec la bonne regex)

public class FormModel {
[Required(ErrorMessage = "First Name is a Required field.")]
[DataType(DataType.Text)]
[Display(Order = 1, Name = "FirstName")]
[RegularExpression("^((?!^First Name$)[a-zA-Z '])+$", ErrorMessage = "First name is required and must be properly formatted.")]
public string FirstName { get; set; }
[Required(ErrorMessage = "Last Name is a Required field.")]
[DataType(DataType.Text)]
[Display(Order = 2, Name = "LastName")]
[RegularExpression("^((?!^Last Name$)[a-zA-Z '])+$", ErrorMessage = "Last name is required and must be properly formatted.")]
public string LastName { get; set; }
[Required(ErrorMessage = "Address is a Required field.")]
[DataType(DataType.Text)]
[Display(Order = 3, Name = "Address")]
[RegularExpression("^((?!^Address$)[0-9A-Za-z #.,])+$", ErrorMessage = "Address is required and must be properly formatted.")]
public string Address { get; set; }
[DataType(DataType.Text)]
[Display(Order = 4, Name = "Address2")]
public string Address2 { get; set; }
[Required(ErrorMessage = "City is a Required field.")]
[DataType(DataType.Text)]
[RegularExpression("^((?!^City$)[a-zA-Z '])+$", ErrorMessage = "City is required and must be properly formatted.")]
[Display(Order = 6, Name = "City")]
public string City { get; set; }
[Required( ErrorMessage = "State is a Required field." )]
[DataType( DataType.Text )]
[Display( Order = 7, Name = "State" )]
public IEnumerable<String> State { get; set; }
[Required( ErrorMessage = "Zip is a Required field." )]
[DataType( DataType.Text )]
[RegularExpression( "\\d{5}",
ErrorMessage = "Zip Code is required and must be properly formatted.")]
[Display( Order = 8, Name = "Zip" )]
public String Zip { get; set; }
[Required( ErrorMessage = "Phone is a Required field." )]
[DataType( DataType.PhoneNumber )]
[RegularExpression( "^[01]?[- .]?\\(?[2-9]\\d{2}\\)?[- .]?\\d{3}[- .]?\\d{4}$",
ErrorMessage = "Phone is required and must be properly formatted.")]
[Display( Order = 9, Name = "Phone" )]
public string Phone { get; set; }
[Required( ErrorMessage = "Email is a Required field." )]
[DataType( DataType.EmailAddress )]
[RegularExpression( "^[A-Za-z0-9._%+-]*@[A-Za-z0-9.-]*\\.[A-Za-z0-9-]{2,}$",
ErrorMessage = "Email is required and must be properly formatted.")]
[Display( Order = 10, Name = "Email" )]
public string Email { get; set; }

OriginalL'auteur Chris Limina | 2013-05-28