Dans toute application, l'origine principale de saisie de données est le clavier. Prenons un exemple simple : la saisie d'un email. Alors que pour un être humain, la vérification d'une adresse email est assez évidente, l'ordinateur ne sait pas le faire par lui-même et c'est tout à fait normal : il ne sait pas ce qu'est une adresse email. Le développeur a la charge de lui donner des règles pour reconnaitre une adresse valide.
Commençons par la définition d'une adresse. Une adresse email est une suite de caractères qui suit des règles précises. Prenons l'adresse « mon.email@thb.com », et analysons la.
Une première analyse et notre expérience permet de déduire les règles suivantes :
- une adresse email est un ensemble de groupes de caractères séparés par des « . » et un « @ ».
- il n'y a qu'un seul « . » après le « @ » pour définir le domaine
- avant le « @ », le point n'est pas obligatoire
Est-ce suffisant pour définir une adresse e-mail ? Non : si on reste sur ces règles, les adresses seraient valides :
- « \^.{}@t.## »
- »__. @ .com »
En effet, nous n'avons pas précisé les caractères autorisés entre les « . » et le « @ ». Pour simplifier, les seuls caractères autorisés sont les caractères alphanumériques (« a » à « z », « 0 » à « 9 ») et « _ »
Toutes ces définitions vont nous permettre maintenant de décrire une adresse e-mail. L'expression régulière sera la traduction de ses règles dans un langage que l'ordinateur pourra comprendre pour reconnaitre une adresse.