Exercice d'expression régulière #27
Labels
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: ciri/stage_2023#27
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Comment trouver les phrases qui commencent par un impératif s'adressant à "vous" pour vérifier s'il est préférable d'utiliser l'impératif ou l'infinitif ?
Dans les interfaces d'utilisation, quelle est la différence entre un infinitif et un impératif ?
Aline n'a pas encore vu les expressions régulières, prenez un peu de temps pour lui expliquer comment ça fonctionne (dans un premier temps dans la cadre d'OmegaT)
La regex
^(Vous|vous)\s+[a-z]+(ez)
permet de trouver des phrases qui commencent par un impératif s'adressant à la deuxième personne du pluriel.Explication de la regex :
^
: début de ligne(Vous|vous)
: le mot "Vous" ou "vous" (pour prendre en compte la casse)\s+
: une ou plusieurs espaces[a-z]+
: une ou plusieurs lettres minuscules(ez)
: le suffixe "ez"La regex
^\s*[A-Za-zéèêôû]+(ez)\s+
permet de trouver des phrases qui commencent par un verbe à l'impératif à la deuxième personne du pluriel, sans spécifier le pronom "vous".Explication :
\s*
: zéro ou plusieurs espaces[A-Za-zéèêôû]+
: une ou plusieurs lettres--> Ceci n'est qu'une tentative...
Dans une interface d'utilisation, un infinitif est généralement utilisé pour indiquer une action à effectuer, sans donner d'instructions directes.
"Enregistrer"
indique à l'utilisateur qu'il peut enregistrer quelque chose, mais ne lui donne pas d'ordre direct pour le faire.En revanche, un impératif est utilisé pour donner des instructions directes.
"Cliquez ici"
est un impératif qui donne l'ordre de cliquer sur le bouton.L'impératif n'utilise pas le pronom sujet.
Je m'excuse sincèrement et j'admets que c'est une erreur due à une inattention de ma part…
Je recommence, car la première proposition n’est pas cohérente et à oublier.
Ensuite, en me relisant, je me suis rendue compte que
\s*
est en réalité inutile dans^\s*[A-Za-zéèêôû]+(ez)\s+
puisqu'avec ou sans, j'obtiens le même résultat.L'expression est donc la suivante :
^[A-Za-zéèêôû]+(ez)\s+
ou alors[A-Za-zéèêôû]+(ez)\s+
car le verbe n'est pas toujours en début de phrase.J'essaye maintenant d'écrire une expression qui trouve les phrases qui commencent par un impératif, mais aussi par des chiffres suivis d'un impératif (ex : instructions numérotées).
Ce qui veut dire qu’il n’y a pas de termes de type
[A-Za-zéèêôû]+(ez)
qui soit précédé d’une espace.S’il y avait eu une différence dans les résultats, il aurait été bon d’identifier ces segments pour voir s’ils ne sont pas le fruit d’erreurs.
Les caractères que vous avez choisis excluent le
à
ou leç
. Il y a une classe (un bloc) de caractères Unicode qui correspondent à tout ce qui se trouve dans le script ‘latin’.^[\p{IsLatin}]+ez
Effectivement, l’impératif peut être dans d’autres parties de la phrase s’il n’a pas été segmenté.
Cependant, la seconde expression va également trouver des parties du type
(vous)… ez
et il ne s’agira plus d’impératifs, même si on peut se poser la question sur la validité de phrases qui utilisent un ‘vous’.Pour limiter un peu la recherche, il pourrait être intéressant de voir la syntaxe des instructions numérotées :
1.
ou1)
, par ex. Y a-t-il d’autres types de numérotation dans le manuel ? Vous devriez pouvoir trouver la réponse en cherchant les segments qui commencent par un chiffre et en étudiant le résultat.En utilisant l'expression
^\d+
je ne trouve que deux exemples d'instructions numérotées (aux segments 73 et 74).L'expression suivante me permet de trouver ces segments :
^\d+\)\s*[\p{IsLatin}]+ez
Avec
^\d+\)
vous forcez la présence d'un ou plusieurs chiffres suivis d'une parenthèse.Si vous faites cette recherche, vous allez trouver combien de segment ?
En utilisant
^\d+\)
je trouve cinq segments (en excluant les segments orphelins).Avec seulement 2 segments numérotés, on pourrait les traiter séparément et laisser passer, mais pour l'exercice, comment ferait-on pour trouver aussi les segments qui ne commencent pas par des numéros ?
Petites questions pour compliquer la vie à ceux et celles qui relèvent le défi de l'expression régulière pour des phrases qui commencent par un impératif :