Howto Regex : poursuite de la relecture et complément de traduction.

This commit is contained in:
Christophe Nanteuil 2018-07-24 00:13:45 +02:00
parent b2e692a468
commit ad52b817a7

View File

@ -6,7 +6,7 @@ msgstr ""
"Project-Id-Version: Python 3.6\n" "Project-Id-Version: Python 3.6\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-06-28 15:29+0200\n" "POT-Creation-Date: 2018-06-28 15:29+0200\n"
"PO-Revision-Date: 2018-07-22 16:05+0200\n" "PO-Revision-Date: 2018-07-24 00:09+0200\n"
"Last-Translator: Nabil Bendafi <nabil@bendafi.fr>\n" "Last-Translator: Nabil Bendafi <nabil@bendafi.fr>\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n" "Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n" "Language: fr\n"
@ -161,18 +161,18 @@ msgid ""
"do." "do."
msgstr "" msgstr ""
"Il existe des exceptions à cette règle ; certains caractères sont des :dfn:" "Il existe des exceptions à cette règle ; certains caractères sont des :dfn:"
"`métacaractères <metacharacters>` spéciaux et ne correspondent pas à eux-" "`métacaractères` spéciaux et ne correspondent pas à eux-mêmes. Au lieu de "
"mêmes. Au lieu de cela, ils signalent que certaines choses non ordinaires " "cela, ils signalent que certaines choses non ordinaires doivent "
"doivent correspondre, ou ils affectent d'autre portions de la RE en les " "correspondre, ou ils affectent d'autre portions de la RE en les répétant ou "
"répétant ou en changeant leur sens. Une grande partie de ce document est " "en changeant leur sens. Une grande partie de ce document est consacrée au "
"consacrée au fonctionnement de ces métacaractères." "fonctionnement de ces métacaractères."
#: ../Doc/howto/regex.rst:76 #: ../Doc/howto/regex.rst:76
msgid "" msgid ""
"Here's a complete list of the metacharacters; their meanings will be " "Here's a complete list of the metacharacters; their meanings will be "
"discussed in the rest of this HOWTO." "discussed in the rest of this HOWTO."
msgstr "" msgstr ""
"Voici une liste complète des métacaractères ; leurs sens est décrit dans la " "Voici une liste complète des métacaractères ; leur sens est décrit dans la "
"suite de ce guide." "suite de ce guide."
#: ../Doc/howto/regex.rst:83 #: ../Doc/howto/regex.rst:83
@ -216,12 +216,12 @@ msgid ""
"match the ``'^'`` character. For example, ``[^5]`` will match any character " "match the ``'^'`` character. For example, ``[^5]`` will match any character "
"except ``'5'``." "except ``'5'``."
msgstr "" msgstr ""
"Vous pouvez trouvez une correspondance avec les caractères non listés dans " "Vous pouvez trouver une correspondance avec les caractères non listés dans "
"une classe en spécifiant le :dfn:`complément <complementing>` de l'ensemble. " "une classe en spécifiant le :dfn:`complément` de l'ensemble. Ceci est "
"Ceci est indiqué en plaçant un ``'^'`` en tant que premier caractère de la " "indiqué en plaçant un ``'^'`` en tant que premier caractère de la classe ; "
"classe ; ``'^'`` en dehors d'une classe de caractères correspond au " "``'^'`` en dehors d'une classe de caractères correspond au caractère "
"caractère ``'^'``. Par exemple, ``[^5]`` correspond à tous les caractères, " "``'^'``. Par exemple, ``[^5]`` correspond à tous les caractères, sauf "
"sauf ``'5'``." "``'5'``."
#: ../Doc/howto/regex.rst:102 #: ../Doc/howto/regex.rst:102
msgid "" msgid ""
@ -234,11 +234,11 @@ msgid ""
msgstr "" msgstr ""
"Le métacaractère probablement le plus important est la barre oblique inverse " "Le métacaractère probablement le plus important est la barre oblique inverse "
"( *backslash* en anglais), ``\\``. Comme dans les chaînes de caractères en " "( *backslash* en anglais), ``\\``. Comme dans les chaînes de caractères en "
"Python, le **backslash** peut être suivi par différents caractères pour " "Python, la barre oblique inverse peut être suivie par différents caractères "
"signaler différentes séquences spéciales. Il est aussi utilisé pour échapper " "pour signaler différentes séquences spéciales. Elle est aussi utilisée pour "
"tous les métacaractères afin d'en trouver les correspondances dans les " "échapper tous les métacaractères afin d'en trouver les correspondances dans "
"motifs ; par exemple, si vous devez trouver une correspondance pour ``[`` ou " "les motifs ; par exemple, si vous devez trouver une correspondance pour "
"``\\`, vous pouvez les précéder avec une barre oblique inverse pour " "``[`` ou ``\\`, vous pouvez les précéder avec une barre oblique inverse pour "
"annihiler leur signification spéciale : ``\\[`` ou ``\\\\``." "annihiler leur signification spéciale : ``\\[`` ou ``\\\\``."
#: ../Doc/howto/regex.rst:109 #: ../Doc/howto/regex.rst:109
@ -262,7 +262,7 @@ msgid ""
"in a string pattern by supplying the :const:`re.ASCII` flag when compiling " "in a string pattern by supplying the :const:`re.ASCII` flag when compiling "
"the regular expression." "the regular expression."
msgstr "" msgstr ""
"Prenons un exemple: ``\\w`` correspond à n'importe quel caractère " "Prenons un exemple : ``\\w`` correspond à n'importe quel caractère "
"alphanumérique. Si l'expression régulière est exprimée en *bytes*, c'est " "alphanumérique. Si l'expression régulière est exprimée en *bytes*, c'est "
"équivalent à la classe ``[a-zA-Z0-9_]``. Si l'expression régulière est une " "équivalent à la classe ``[a-zA-Z0-9_]``. Si l'expression régulière est une "
"chaîne de caractères, ``\\w`` correspond à tous les caractères identifiés " "chaîne de caractères, ``\\w`` correspond à tous les caractères identifiés "
@ -406,7 +406,7 @@ msgid ""
"exactly once." "exactly once."
msgstr "" msgstr ""
"Le premier métacaractère pour la répétition que nous abordons est ``*``. " "Le premier métacaractère pour la répétition que nous abordons est ``*``. "
"``*`` ne correspond pas au caractère litéral ``'*'`` ; à la place, il " "``*`` ne correspond pas au caractère littéral ``'*'`` ; à la place, il "
"spécifie que le caractère précédent peut correspondre zéro, une ou plusieurs " "spécifie que le caractère précédent peut correspondre zéro, une ou plusieurs "
"fois (au lieu d'une seule fois)." "fois (au lieu d'une seule fois)."
@ -426,7 +426,7 @@ msgid ""
"portions of the pattern don't match, the matching engine will then back up " "portions of the pattern don't match, the matching engine will then back up "
"and try again with fewer repetitions." "and try again with fewer repetitions."
msgstr "" msgstr ""
"Les répétitions telles que ``*`` sont :dfn:`<greedy>` ; quand vous répétez " "Les répétitions telles que ``*`` sont :dfn:`gloutonnes` ; quand vous répétez "
"une RE, le moteur de correspondance essaie de trouver la correspondance la " "une RE, le moteur de correspondance essaie de trouver la correspondance la "
"plus longue en répétant le motif tant qu'il le peut. Si la suite du motif ne " "plus longue en répétant le motif tant qu'il le peut. Si la suite du motif ne "
"correspond pas, le moteur de correspondance revient en arrière et essaie " "correspond pas, le moteur de correspondance revient en arrière et essaie "
@ -558,7 +558,7 @@ msgid ""
"``[bcd]*``, and if that subsequently fails, the engine will conclude that " "``[bcd]*``, and if that subsequently fails, the engine will conclude that "
"the string doesn't match the RE at all." "the string doesn't match the RE at all."
msgstr "" msgstr ""
"La fin de la RE est maintenant atteint et la correspondance trouvée est " "La fin de la RE est maintenant atteinte et la correspondance trouvée est "
"``'abcb'``. Ceci démontre comment le moteur de correspondance essaie d'aller " "``'abcb'``. Ceci démontre comment le moteur de correspondance essaie d'aller "
"le plus loin possible en premier et, si la correspondance échoue, il revient " "le plus loin possible en premier et, si la correspondance échoue, il revient "
"progressivement en arrière et ré-essaie avec le reste de la RE encore et " "progressivement en arrière et ré-essaie avec le reste de la RE encore et "
@ -646,7 +646,7 @@ msgid ""
"perform matches with them." "perform matches with them."
msgstr "" msgstr ""
"Maintenant que nous avons vu quelques expressions régulières simples, " "Maintenant que nous avons vu quelques expressions régulières simples, "
"utilisons les concrètement. Le module :mod:`re` fournit une interface pour " "utilisons-les concrètement. Le module :mod:`re` fournit une interface pour "
"le moteur de correspondance, ce qui permet de compiler les RE en objets et " "le moteur de correspondance, ce qui permet de compiler les RE en objets et "
"d'effectuer des correspondances avec." "d'effectuer des correspondances avec."
@ -864,7 +864,7 @@ msgid ""
msgstr "" msgstr ""
"Une fois que nous avons un objet représentant une expression régulière " "Une fois que nous avons un objet représentant une expression régulière "
"compilée, qu'en faisons-nous ? Les objets motifs ont plusieurs méthodes et " "compilée, qu'en faisons-nous ? Les objets motifs ont plusieurs méthodes et "
"attributs. Seuls les plus significatifs seront couverts ici; consultez la " "attributs. Seuls les plus significatifs seront couverts ici ; consultez la "
"documentation :mod:`re` pour la liste complète." "documentation :mod:`re` pour la liste complète."
#: ../Doc/howto/regex.rst:359 ../Doc/howto/regex.rst:417 #: ../Doc/howto/regex.rst:359 ../Doc/howto/regex.rst:417
@ -924,7 +924,7 @@ msgid ""
msgstr "" msgstr ""
":meth:`~re.Pattern.match` et :meth:`~re.Pattern.search` renvoient ``None`` " ":meth:`~re.Pattern.match` et :meth:`~re.Pattern.search` renvoient ``None`` "
"si aucune correspondance ne peut être trouvée. Si elles trouvent une " "si aucune correspondance ne peut être trouvée. Si elles trouvent une "
"correspondance, une instance d' objet :ref:`correspondance <match-objects>` " "correspondance, une instance d'objet :ref:`correspondance <match-objects>` "
"est renvoyée, contenant les informations relatives à la correspondance : " "est renvoyée, contenant les informations relatives à la correspondance : "
"position de départ et de fin, la sous-chaîne qui correspond et d'autres " "position de départ et de fin, la sous-chaîne qui correspond et d'autres "
"informations." "informations."
@ -938,12 +938,22 @@ msgid ""
"whether the RE matches or fails. :file:`redemo.py` can be quite useful when " "whether the RE matches or fails. :file:`redemo.py` can be quite useful when "
"trying to debug a complicated RE." "trying to debug a complicated RE."
msgstr "" msgstr ""
"Vous pouvez apprendre leur fonctionnement en expérimentant de manière "
"interactive avec le module :mod:`re`. Si vous disposez de :mod:`tkinter`, "
"vous pouvez aussi regarder les sources de :source:`Tools/demo/redemo.py`, un "
"programme de démonstration inclus dans la distribution Python. Ce programme "
"vous permet de rentrer des RE et des chaînes, affichant si la RE correspond "
"ou pas. :file:`redemo.py` peut s'avérer particulièrement utile quand vous "
"devez déboguer une RE compliquée."
#: ../Doc/howto/regex.rst:386 #: ../Doc/howto/regex.rst:386
msgid "" msgid ""
"This HOWTO uses the standard Python interpreter for its examples. First, run " "This HOWTO uses the standard Python interpreter for its examples. First, run "
"the Python interpreter, import the :mod:`re` module, and compile a RE::" "the Python interpreter, import the :mod:`re` module, and compile a RE::"
msgstr "" msgstr ""
"Ce guide utilise l'interpréteur standard de Python pour ses exemples. "
"Commencez par lancer l'interpréteur Python, importez le module :mod:`re` et "
"compilez une RE ::"
#: ../Doc/howto/regex.rst:394 #: ../Doc/howto/regex.rst:394
msgid "" msgid ""
@ -953,6 +963,12 @@ msgid ""
"which will cause the interpreter to print no output. You can explicitly " "which will cause the interpreter to print no output. You can explicitly "
"print the result of :meth:`!match` to make this clear. ::" "print the result of :meth:`!match` to make this clear. ::"
msgstr "" msgstr ""
"Maintenant, vous pouvez tester des correspondances de la RE ``[a-z]+`` avec "
"différentes chaînes. Une chaîne vide ne doit pas correspondre, puisque ``+`` "
"indique \"une ou plusieurs occurrences\". :meth:`~re.Pattern.match` doit "
"renvoyer ``None`` dans ce cas, ce qui fait que l'interpréteur n'affiche "
"rien. Vous pouvez afficher le résultat de :meth:`!match` explicitement pour "
"que ce soit clair. ::"
#: ../Doc/howto/regex.rst:404 #: ../Doc/howto/regex.rst:404
msgid "" msgid ""
@ -960,6 +976,10 @@ msgid ""
"this case, :meth:`~re.Pattern.match` will return a :ref:`match object <match-" "this case, :meth:`~re.Pattern.match` will return a :ref:`match object <match-"
"objects>`, so you should store the result in a variable for later use. ::" "objects>`, so you should store the result in a variable for later use. ::"
msgstr "" msgstr ""
"Maintenant, essayons sur une chaîne qui doit correspondre, par exemple "
"``tempo``. Dans ce cas, :meth:`~re.Pattern.match` renvoie un :ref:`objet "
"correspondance <match-objects>`, vous pouvez ainsi stocker le résultat dans "
"une variable pour une utilisation ultérieure. ::"
#: ../Doc/howto/regex.rst:412 #: ../Doc/howto/regex.rst:412
msgid "" msgid ""
@ -967,6 +987,10 @@ msgid ""
"about the matching string. Match object instances also have several methods " "about the matching string. Match object instances also have several methods "
"and attributes; the most important ones are:" "and attributes; the most important ones are:"
msgstr "" msgstr ""
"Maintenant, vous pouvez interroger :ref:`l'objet correspondance <match-"
"objects>` pour obtenir des informations sur la chaîne qui correspond. Les "
"instances d'objets correspondances possèdent plusieurs méthodes et "
"attributs ; les plus importantes sont :"
#: ../Doc/howto/regex.rst:419 #: ../Doc/howto/regex.rst:419
msgid "``group()``" msgid "``group()``"
@ -982,7 +1006,7 @@ msgstr "``start()``"
#: ../Doc/howto/regex.rst:421 #: ../Doc/howto/regex.rst:421
msgid "Return the starting position of the match" msgid "Return the starting position of the match"
msgstr "Retourne la position de début de correspondance" msgstr "Retourne la position de début de la correspondance"
#: ../Doc/howto/regex.rst:423 #: ../Doc/howto/regex.rst:423
msgid "``end()``" msgid "``end()``"
@ -990,7 +1014,7 @@ msgstr "``end()``"
#: ../Doc/howto/regex.rst:423 #: ../Doc/howto/regex.rst:423
msgid "Return the ending position of the match" msgid "Return the ending position of the match"
msgstr "Retourne la position de fin de correspondance" msgstr "Retourne la position de fin de la correspondance"
#: ../Doc/howto/regex.rst:425 #: ../Doc/howto/regex.rst:425
msgid "``span()``" msgid "``span()``"
@ -999,10 +1023,11 @@ msgstr "``span()``"
#: ../Doc/howto/regex.rst:425 #: ../Doc/howto/regex.rst:425
msgid "Return a tuple containing the (start, end) positions of the match" msgid "Return a tuple containing the (start, end) positions of the match"
msgstr "" msgstr ""
"Renvoie un *tuple* contenant les positions (début, fin) de la correspondance."
#: ../Doc/howto/regex.rst:429 #: ../Doc/howto/regex.rst:429
msgid "Trying these methods will soon clarify their meaning::" msgid "Trying these methods will soon clarify their meaning::"
msgstr "" msgstr "Essayons ces méthodes pour clarifier leur signification ::"
#: ../Doc/howto/regex.rst:438 #: ../Doc/howto/regex.rst:438
msgid "" msgid ""
@ -1015,6 +1040,14 @@ msgid ""
"scans through the string, so the match may not start at zero in that " "scans through the string, so the match may not start at zero in that "
"case. ::" "case. ::"
msgstr "" msgstr ""
":meth:`~re.Match.group` renvoie la sous-chaîne qui correspond à la RE. :meth:"
"`~re.Match.start` et :meth:`~re.Match.end` renvoient les indices de début et "
"de fin de la correspondance. :meth:`~re.Match.span` renvoie les indices de "
"début et de fin dans un simple *tuple*. Comme la méthode :meth:`~re.Pattern."
"match` ne fait que vérifier si la RE correspond au début de la chaîne, :meth:"
"`!start` vaut toujours zéro. Cependant, la méthode :meth:`~re.Pattern."
"search` d'un motif analyse toute la chaîne, afin de trouver une "
"correspondance potentielle qui ne commence pas à zéro. ::"
#: ../Doc/howto/regex.rst:455 #: ../Doc/howto/regex.rst:455
msgid "" msgid ""
@ -1022,12 +1055,17 @@ msgid ""
"<match-objects>` in a variable, and then check if it was ``None``. This " "<match-objects>` in a variable, and then check if it was ``None``. This "
"usually looks like::" "usually looks like::"
msgstr "" msgstr ""
"Dans les programmes réels, le style le plus classique consiste à stocker :"
"ref:`l'objet correspondance <match-objects>` dans une variable, puis à "
"vérifier s'il vaut ``None``. Généralement, cela ressemble à ceci ::"
#: ../Doc/howto/regex.rst:466 #: ../Doc/howto/regex.rst:466
msgid "" msgid ""
"Two pattern methods return all of the matches for a pattern. :meth:`~re." "Two pattern methods return all of the matches for a pattern. :meth:`~re."
"Pattern.findall` returns a list of matching strings::" "Pattern.findall` returns a list of matching strings::"
msgstr "" msgstr ""
"Deux méthodes de motifs renvoient toutes les correspondances pour un motif. :"
"meth:`~re.Pattern.findall` renvoie une liste des chaînes qui correspondent ::"
#: ../Doc/howto/regex.rst:473 #: ../Doc/howto/regex.rst:473
msgid "" msgid ""
@ -1037,6 +1075,12 @@ msgid ""
"in a :exc:`DeprecationWarning` and will eventually become a :exc:" "in a :exc:`DeprecationWarning` and will eventually become a :exc:"
"`SyntaxError`. See :ref:`the-backslash-plague`." "`SyntaxError`. See :ref:`the-backslash-plague`."
msgstr "" msgstr ""
"Le préfixe ``r`` , qui indique une chaîne brute littérale, est nécessaire "
"dans cet exemple car les séquences d'échappement dans une chaîne littérale "
"qui ne sont pas reconnues par Python, alors qu'elles le sont par les "
"expressions régulières, induisent maintenant un :exc:`DeprecationWarning` et "
"deviendront possiblement des :exc:`SyntaxError`. Reportez-vous à :ref:`the-"
"backslash-plague`."
#: ../Doc/howto/regex.rst:479 #: ../Doc/howto/regex.rst:479
msgid "" msgid ""
@ -1045,6 +1089,10 @@ msgid ""
"sequence of :ref:`match object <match-objects>` instances as an :term:" "sequence of :ref:`match object <match-objects>` instances as an :term:"
"`iterator`::" "`iterator`::"
msgstr "" msgstr ""
":meth:`~re.Pattern.findall` doit créer la liste entière avant d'être renvoyé "
"comme résultat. La méthode :meth:`~re.Pattern.finditer` renvoie une séquence "
"d'instances :ref:`d'objets correspondances <match-objects>` en tant qu'\\ :"
"term:`itérateur <iterator>` ::"
#: ../Doc/howto/regex.rst:495 #: ../Doc/howto/regex.rst:495
msgid "Module-Level Functions" msgid "Module-Level Functions"
@ -1158,8 +1206,8 @@ msgstr ""
msgid "" msgid ""
"Enable verbose REs, which can be organized more cleanly and understandably." "Enable verbose REs, which can be organized more cleanly and understandably."
msgstr "" msgstr ""
"Activer les RE verbeuses, qui peuvent être organisées de manière plus " "Activer les RE verbeuses, qui peuvent être organisées de manière plus propre "
"propres et compréhensibles." "et compréhensible."
#: ../Doc/howto/regex.rst:561 #: ../Doc/howto/regex.rst:561
msgid "" msgid ""