2009-05-03 4 views

Répondre

1

Pour deux chiffres pour l'essai de l'année:

^([012]?\d|3[01])-([Jj][Aa][Nn]|[Ff][Ee][Bb]|[Mm][Aa][Rr]|[Aa][Pp][Rr]|[Mm][Aa][Yy]|[Jj][Uu][Nn]|[Jj][Uu][Ll]|[Aa][Uu][Gg]|[Ss][Ee][Pp]|[Oo][Cc][Tt]|[Nn][Oo][Vv]|[Dd][Ee][Cc])-\d\d$ 

Avec quatre chiffres pour l'année:

^([012]?\d|3[01])-([Jj][Aa][Nn]|[Ff][Ee][Bb]|[Mm][Aa][Rr]|[Aa][Pp][Rr]|[Mm][Aa][Yy]|[Jj][Uu][Nn]|[Jj][Uu][Ll]|[Aa][Uu][Gg]|[Ss][Ee][Pp]|[Oo][Cc][Tt]|[Nn][Oo][Vv]|[Dd][Ee][Cc])-(19|20)\d\d$ 

Ces expressions signifient:

  • 0 ou 1 ou 2 suivi d'un nombre, ou 3 plus 0 ou 1
  • suivant un tableau de bord
  • Pour le mois il essaie «toutes les combinaisons de Jan, Jan, Jan, Jan, etc ... pour tous les douze mois
  • suivant un tableau de bord
  • Enfin, il attend deux chiffres pour la version 'yyyy' ou 19 ou 20 suivi de deux chiffres pour la version 'yy'
3

essayer

[email protected]"^(([1-9])|(0[1-9])|(1[0-2]))\-((0[1-9]) |([1-31]))\-((\d{2})|(\d{4}))$";

ou

vous pouvez essayer ce validateur personnalisé au lieu

CustomValidator1_ServerValidate protected void (source objet, ServerValidateEventArgs args) {

résultat DateTime;

si (DateTime.TryParse (args.Value, hors résultat)!)

{

args.IsValid = false;

retour;

} else args.IsValid = true;

}

2

Est-il nécessaire de forcer l'utilisateur à entrer les données dans le format proscrit par la base de données Oracle? Tant que l'utilisateur entre une date valide, vous pouvez analyser l'entrée dans un objet DateTime, puis appeler ToString ("dd-MMMM-yy") pour produire une représentation de la date dans le format requis par la base de données. Cela vous donne la liberté de fournir un moyen plus convivial de collecter des données provenant de l'utilisateur, par ex. un contrôle de type sélecteur date/heure.