Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :
Sujets que vous pourriez aussi aimer :Requêtes et expressions régulières
Les
expressions régulières sont généralement des techniques de programmation destinées à isoler des enregistrements contenant des
séquences remarquables dans leurs champs. On les exploite pour trouver tout ce qui se rapproche de la recherche fournie, sachant qu'aucun champ ne contient précisément des expressions précises et identiques. Cette nouvelle
astuce Access montre comment enclencher ces
expressions régulières avec les
requêtes.
Base de données source
Nous proposons d'étayer ces travaux à partir d'une
base existante offrant des
données à triturer.
Comme l'indique le
volet de navigation sur la gauche de l'écran, cette
base de données n'est constituée que d'une seule
table.
- Double cliquer sur cette table Produits pour l'afficher en mode feuille de données,
Cette table archive des articles vestimentaires destinés à la vente. Ils sont essentiellement décrits par leur
champ produit_nom.
Fragments de texte
Pour débuter la découverte, nous proposons de réaliser des recherches sur des fragments à contenir. Et pour cela, nous avons besoin d'une
requête.
- Fermer la table Produits en cliquant sur la croix de son onglet,
- En haut de la fenêtre Access, cliquer sur l'onglet Créer pour activer son ruban,
- Dans la section Requêtes du ruban, cliquer sur le bouton Création de requête,
- Dans la boîte de dialogue qui suit, sélectionner la table Produits,
- Dès lors, cliquer sur le bouton Ajouter puis sur le bouton Fermer,
Dans l'
éditeur de requête, la
table apparaît dans une représentation schématisée avec l'énumération de tous ses
champs.
- Cliquer sur le tout premier champ (produit_ref) pour le sélectionner,
- Tout en maintenant la touche Maj (Shift) enfoncée, cliquer sur le tout dernier (produit_code),
Cette technique permet de réunir
tous les champs de la
table dans une même sélection.
- Dès lors, glisser la sélection vers le bas, sur la grille de requête,
De cette manière, nous incluons tous les champs à restituer pour les extractions à venir.
- Enregistrer la requête sous le nom : R_Produits,
Les séquences remarquables d'une
expression régulière s'inscrivent toujours entre crochets.
- Dans la zone Critères du champ Produit_nom, inscrire l'expression suivante :
Comme '[P-V]*'
L'opérateur
Comme est utilisé pour extraire tout ce qui ressemble à ce qui suit dans l'expression. En l'occurrence ici, nous cherchons à trouver les
enregistrements commençant sous la forme désignée entre crochets, en atteste la présence de l'astérisque en suffixe. Et grâce à la séquence des deux lettres P et V séparées d'un tiret, nous cherchons spécifiquement tous les
enregistrements pour lesquels la désignation débute par une lettre se situant entre la lettre P et la lettre V.
- A gauche du ruban Accueil, cliquer sur la flèche du bouton Affichage,
- Dans la liste, choisir le mode Feuille de données,
La
table Produits compte 244
enregistrements. Si vous consultez la petite barre de navigation en bas de la
fenêtre Access, vous constatez qu'il n'en subsiste plus que 143 sous l'action de ce
filtre. Et si vous scrutez attentivement les désignations, tous les
enregistrements pour lesquels la première lettre n'est pas un P, Q, R, S, T ou V, sont exclus.
- A gauche du ruban Accueil, cliquer sur la flèche du bouton Affichage,
- Dans les propositions, choisir le mode création,
Nous revenons ainsi dans la vue en conception de la
requête.
- Dans la zone Critères du champ produit_nom, adapter la précédente syntaxe comme suit :
Comme '[!P-V]*'
Nous ajoutons simplement un point d'exclamation devant la séquence remarquable de l'
expression régulière. Ce point d'exclamation fait office de négation. En d'autres termes, il doit nous permettre d'extraire tous les enregistrements pour lesquels la désignation ne commence pas par la lettre P, Q, R, S, T ou V.
- Enregistrer les modifications de la requête (CTRL + S) puis l'exécuter,
Tout d'abord, en consultant la barre de navigation, vous constatez que seuls les 101 enregistrements manquants dans la précédente
requête semblent avoir été extraits. Et si vous consultez attentivement les désignations, vous constatez en effet qu'aucune ne commence par les lettres proscrites dans la séquence de l'
expression régulière.
- Revenir en mode conception de la requête,
Par déclinaison, nous pouvons tenter les
expressions régulières suivantes :
Comme 'E[ns]*', Comme 'E[!ns]*' et Comme 'E[n-t]*'.
La première permet d'extraire les
enregistrements commençant nécessairement par la lettre E et suivie de la lettre N ou S. Si vous réalisez une extraction, il en résulte uniquement les ensembles et escarpins. La deuxième permet d'extraire les
enregistrements commençant par un E mais cette lettre ne doit être suivie ni d'un N ni d'un S. Il en résulte les étoles. La dernière permet d'extraire les
enregistrements qui commencent par un E suivi par une lettre comprise entre la N et la T. Il en résulte les ensembles, les étoles et les escarpins.
Séquences numériques remarquables
Toujours par déclinaison, nous allons maintenant comprendre comment extraire des
enregistrements possédant des
séquences remarquables de chiffres. Et très vite, nous allons pouvoir jauger l'intérêt d'une telle technique.
- Dans la zone Critères du champ produit_nom, inscrire l'expression suivante :
Comme '*[0-9]'
Cette
expression régulière doit permettre d'extraire tous les enregistrements pour lesquels la désignation se termine par un chiffre compris entre 0 et 9.
- Enregistrer la requête puis l'exécuter,
Il en résulte effectivement les vêtements accompagnés d'une indication sur la taille. Il subsiste 120 enregistrements sur les 244 de départ.
Toujours et encore par déclinaison, cette
expression régulière :
Comme '*[0-9][0-9]', permet de ne conserver que les enregistrements pour lesquels la désignation se termine nécessairement par deux chiffres. Si vous exécutez la
requête, l'extraction s'affine à 113 résultats au lieu de 120.