dams Wed Feb 7 13:59:35 2001 EDT Modified files: /phpdoc/fr/functions pcre.xml Log: Added internal links
Index: phpdoc/fr/functions/pcre.xml diff -u phpdoc/fr/functions/pcre.xml:1.15 phpdoc/fr/functions/pcre.xml:1.16 --- phpdoc/fr/functions/pcre.xml:1.15 Wed Feb 7 01:12:13 2001 +++ phpdoc/fr/functions/pcre.xml Wed Feb 7 13:59:34 2001 @@ -379,8 +379,9 @@ </para> <para> <literal>/F</literal> indique que le paramètre - <parameter>replacement</parameter> doit être considéré comme un nom de fonction. - Cette fonction sera appelée, avec un tableau contenant les éléments trouvés comme + <parameter>replacement</parameter> doit être considéré + comme un nom de fonction. Cette fonction sera appelée, avec un + tableau contenant les éléments trouvés comme arguments. La fonctoin doit retourner la chaine de remplacement. Cette option a été ajoutée en PHP 4.0.4. </para> @@ -560,9 +561,9 @@ </para> <para> Si l'argument optionnel <parameter>delimiter</parameter> est fourni, - il sera aussi échappé. Ceci est pratique pour échapper le délimiteur - requis par les fonctions PCRE. Le slash / est le délimiteur le - plus répandu. + il sera aussi échappé. Ceci est pratique pour échapper + le délimiteur requis par les fonctions PCRE. Le slash / est le + délimiteur le plus répandu. </para> <para> Les caractères spéciaux qui seront échappés : @@ -777,7 +778,8 @@ cette option, $ est aussi valable avant une nouvelle ligne, si cette dernière est le dernier caractère de la chaîne. Cette option est ignorée si l'option - <emphasis>m</emphasis> est activée. Il n'y a pas d'équivalent en Perl. + <emphasis>m</emphasis> est activée. Il n'y a pas + d'équivalent en Perl. </simpara> </listitem> </varlistentry> @@ -913,7 +915,8 @@ </listitem> <listitem> <simpara> - De manière assez évidente, PCRE n'accepte pas la construction (?{code}) + De manière assez évidente, PCRE n'accepte pas la construction + (?{code}). </simpara> </listitem> <listitem> @@ -927,7 +930,7 @@ d'ailleurs $3) seront correctement affectés. Avec le Perl 5.004, $2 sera correctement affecté dans les deux cas, et c'est aussi vrai avec PCRE. Si Perl évolue vers un autre comportement - cohérent, PCRE s'adaptera probablement + cohérent, PCRE s'adaptera probablement. </simpara> </listitem> <listitem> @@ -1204,7 +1207,8 @@ il faut écrire : "<literal>\\</literal>". </para> <para> - Si un masque est utilisé avec l'option PCRE_EXTENDED, + Si un masque est utilisé avec l'option + <link linkend="pcre.pattern.modifiers">PCRE_EXTENDED</link>, les espaces blancs du masque, mais qui ne sont pas dans une classe de caractères, et les caractères entre dièses "<literal>#</literal>", ainsi que les nouvelles lignes sont ignorées. @@ -1365,7 +1369,8 @@ <term><emphasis>\11</emphasis></term> <listitem> <simpara> - peut être une référence de retour, ou une tabulation, tandis que + peut être une référence de retour, + ou une tabulation </simpara> </listitem> </varlistentry> @@ -1576,8 +1581,10 @@ Les assertions <literal>\A</literal>, <literal>\Z</literal>, et <literal>\z</literal> diffèrent des méta caractères <literal>^</literal> et <literal>$</literal> dans la mesure oú - ils ne sont pas dépendants des options, notamment PCRE_NOTBOL - ou PCRE_NOTEOL. La différence entre <literal>\Z</literal> et + ils ne sont pas dépendants des options, notamment + <link linkend="pcre.pattern.modifiers">PCRE_NOTBOL</link> + ou <link linkend="pcre.pattern.modifiers">PCRE_NOTEOL</link>. + La différence entre <literal>\Z</literal> et <literal>\z</literal> tient au fait que <literal>\Z</literal> recherche les positions avant les nouvelles lignes et à la fin de la chaîne sujet, tandis que <literal>\z</literal> ne recherche @@ -1623,7 +1630,8 @@ La signification de <literal>$</literal> peut changer, de manière à l'amener à ce qu'il ne puisse se trouver qu'en toute fin de la chaîne sujet. Cela se fait en ajoutant l'option - PCRE_DOLLAR_ENDONLY au moment de la compilation, ou de l'exécution. + <link linkend="pcre.pattern.modifiers">PCRE_DOLLAR_ENDONLY</link> + au moment de la compilation, ou de l'exécution. Cette option est inopérante sur <literal>\Z</literal>. </para> <para> @@ -1631,20 +1639,23 @@ à l'amener à ce qu'il puisse se trouver immédiatement avant et immédiatement après un caractère de nouvelle ligne "<literal>\n</literal>". Cela se fait en ajoutant l'option - PCRE_MULTILINE au moment de la compilation ou de l'exécution. + <link linkend="pcre.pattern.modifiers">PCRE_MULTILINE</link> au moment de + la compilation ou de l'exécution. Par exemple, le masque <literal>/^abc$/</literal> accepte la chaîne "<literal>def\nabc</literal>" uniquement en mode multi-lignes. Par conséquent, toutes les parties du masques qui commencent par "<literal>^</literal>" ne sont pas ancrées, en mode multi-lignes. - L'option PCRE_DOLLAR_ENDONLY est ignorée si l'option - PCRE_MULTILINE est choisie. + L'option <link linkend="pcre.pattern.modifiers">PCRE_DOLLAR_ENDONLY</link> + est ignorée si l'option + <link linkend="pcre.pattern.modifiers">PCRE_MULTILINE</link> est choisie. </para> <para> Notez que les méta caractères <literal>\A</literal>, <literal>\Z</literal>, et <literal>\z</literal> peuvent servir à répérer le début et la fin du sujet, et toutes les parties du masque qui commenceront par <literal>\A</literal> seront toujours - ancrées, avec l'option PCRE_MULTILINE ou non. + ancrées, avec l'option + <link linkend="pcre.pattern.modifiers">PCRE_MULTILINE</link> ou non. </para> </refsect2> <refsect2 id="regexp.reference.dot"> @@ -1652,7 +1663,8 @@ <simpara> En dehors d'une classe de caractères, un point remplace n'importe quel caractère, même invisible et à l'exception du - caractère de nouvelle ligne. Avec l'option PCRE_DOTALL le point + caractère de nouvelle ligne. Avec l'option + <link linkend="pcre.pattern.modifiers">PCRE_DOTALL</link> le point remplace n'importe quel caractère, même le caractère de nouvelle ligne. La gestion des points et complètement indépendante de <literal>^</literal> et <literal>$</literal>. @@ -1704,8 +1716,9 @@ <para> Le caractère de nouvelle ligne n'est pas traité de manière spéciale dans les classes de caractères, - quelque soit l'option PCRE_DOTALL ou PCRE_MULTILINE. Une classe telle que - <literal>[^a]</literal> acceptera toujours une nouvelle ligne. + quelque soit l'option <link +linkend="pcre.pattern.modifiers">PCRE_DOTALL</link> + ou <link linkend="pcre.pattern.modifiers">PCRE_MULTILINE</link>. Une classe + telle que <literal>[^a]</literal> acceptera toujours une nouvelle ligne. </para> <para> Le signe moins (<literal>-</literal>) est utilisé pour @@ -1779,9 +1792,13 @@ <refsect2 id="regexp.reference.internal_options"> <title>Options internes</title> <para> - Les options PCRE_CASELESS, PCRE_MULTILINE, PCRE_DOTALL, et PCRE_EXTENDED peuvent - être changée à l'intérieur du masque lui-même, avec des - séquences mises entre "<literal>(?</literal>" et "<literal>)</literal>". + Les options <link linkend="pcre.pattern.modifiers">PCRE_CASELESS</link>, + <link linkend="pcre.pattern.modifiers">PCRE_MULTILINE</link>, + <link linkend="pcre.pattern.modifiers">PCRE_DOTALL</link> et + <link linkend="pcre.pattern.modifiers">PCRE_EXTENDED</link> peuvent + être changée à l'intérieur du masque + lui-même, avec des séquences mises entre + "<literal>(?</literal>" et "<literal>)</literal>". Les options sont : <variablelist> <varlistentry> @@ -1820,8 +1837,11 @@ Par exemple, <literal>(?im)</literal> rend le masque insensible à la casse, et multi-lignes. Il est possible d'annuler ces options en les faisant précéder par un signe <literal>-</literal> : par - exemple <literal>(?im-sx)</literal>, ajoutera les options PCRE_CASELESS - et PCRE_MULTILINE mais annulera les options PCRE_DOTALL et PCRE_EXTENDED. + exemple <literal>(?im-sx)</literal>, ajoutera les options + <link linkend="pcre.pattern.modifiers">PCRE_CASELESS</link> + et <link linkend="pcre.pattern.modifiers">PCRE_MULTILINE</link> mais + annulera les options <link linkend="pcre.pattern.modifiers">PCRE_DOTALL</link> + et <link linkend="pcre.pattern.modifiers">PCRE_EXTENDED</link>. Si une option apparaît avant et après le signe moins, l'option sera annulée. </para> @@ -1834,7 +1854,8 @@ de la même façons : <literal>(?i)abc</literal>, <literal>a(?i)bc</literal>, <literal>ab(?i)c</literal>, <literal>abc(?i)</literal>, et sont parfaitement équivalents au - masque <literal>abc</literal> avec l'option PCRE_CASELESS. En d'autres + masque <literal>abc</literal> avec l'option + <link linkend="pcre.pattern.modifiers">PCRE_CASELESS</link>. En d'autres termes, activer des séquences d'options dans le corps principal du masque revient à appliquer l'option à tout le masque, sauf ordre contraire dans les sous-masques. Si il y a plusieurs séquences @@ -1846,9 +1867,10 @@ l'intérieur d'un sous-masque n'affecte que cette partie du masque, ce qui fait que <literal>(a(?i)b)c</literal> acceptera <literal>abc</literal> et <literal>aBc</literal> mais aucune autre chaîne (en supposant que - PCRE_CASELESS n'est pas utilisé). Cela signifie que les options - permettent d'avoir différente configuration de recherche pour - différentes parties du masque. + <link linkend="pcre.pattern.modifiers">PCRE_CASELESS</link> n'est pas + utilisé). Cela signifie que les options permettent d'avoir + différente configuration de recherche pour différentes + parties du masque. </para> <para> Une séquence d'options dans une alternative affecte toute @@ -1858,8 +1880,10 @@ "<literal>C</literal>", la première alternative qui porte l'option n'est pas prise en compte. Sinon, cela risque d'introduire des comportements très étranges : les options - spécifiques à PCRE telles que PCRE_UNGREEDY et - PCRE_EXTRA peuvent être modifiées de la même + spécifiques à PCRE telles que + <link linkend="pcre.pattern.modifiers">PCRE_UNGREEDY</link> et + <link linkend="pcre.pattern.modifiers">PCRE_EXTRA</link> peuvent + être modifiées de la même manière, en utilisant respectivement les caractères U et X. L'option <literal>(?X)</literal> est particulière, car elle doit toujours intervenir avant toutes les autres options, @@ -2058,7 +2082,8 @@ oú il faut le doubler : <literal>\d??\d</literal>. Ce masque va tenter de lire un seul chiffre, mais le cas échéant, il acceptera 2 chiffres pour permettre à la recherche - d'aboutir. Si l'option PCRE_UNGREEDY est activée, (une option qui + d'aboutir. Si l'option <link +linkend="pcre.pattern.modifiers">PCRE_UNGREEDY</link> + est activée, (une option qui n'est pas disponible avec Perl) alors les quantificateurs sont non gourmand par défaut, mais peuvent être rendu gourmand au cas par cas, en ajoutant un point d'interrogation @@ -2074,7 +2099,8 @@ </para> <para> Si un masque commence par <literal>..*</literal> ou <literal>.{0,}</literal> - et que l'option PCRE_DOTALL (équivalent en Perl à /s) est + et que l'option <link linkend="pcre.pattern.modifiers">PCRE_DOTALL</link> + (équivalent en Perl à /s) est activée, c'est à dire en autorisant le remplacement des nouvelles lignes par un méta-caractère, alors le masque est implicitement ancré, car tout ce qui suit va être @@ -2082,8 +2108,8 @@ comme si le masque se terminait par le méta caractère <literal>\A</literal>. Dans le cas oú on sait d'avance qu'il n'y aura pas de caractère de nouvelle ligne, activer l'option - PCRE_DOTALL et commencer le masque par <literal>.*</literal> permet - d'optmiser le masque. + <link linkend="pcre.pattern.modifiers">PCRE_DOTALL</link> et commencer + le masque par <literal>.*</literal> permet d'optmiser le masque. </para> <para> Alternativement, on peut utiliser <literal>^</literal> pour ancrer @@ -2159,7 +2185,8 @@ la référence arrière. </para> <para>> - Si l'option PCRE_EXTENDED est activée, on peut utiliser un espace. + Si l'option <link linkend="pcre.pattern.modifiers">PCRE_EXTENDED</link> + est activée, on peut utiliser un espace. Sinon, un commentaire vide fait l'affaire. Une référence arrière qui intervient à l'intérieur de parenthèses auquel elle fait référence @@ -2422,7 +2449,8 @@ le sous-masque correspondant à ce numéro a réussi. Considérons le masque suivant, qui contient des espaces non significatifs pour le rendre plus compréhensible (on supposera - l'option PCRE_EXTENDED activée) et qui est divisé en trois parties + l'option <link linkend="pcre.pattern.modifiers">PCRE_EXTENDED</link> + activée) et qui est divisé en trois parties pour simplifier les explications : <literal>( \( )? [^()]+ (?(1) \) )</literal>. </para> <para> @@ -2466,7 +2494,8 @@ dans le masque. </simpara> <simpara> - Si l'option PCRE_EXTENDED est activée, les caractères dièses + Si l'option <link linkend="pcre.pattern.modifiers">PCRE_EXTENDED</link> + est activée, les caractères dièses <literal>#</literal> non échappés en dehors d'une classe de caractères introduisent un commentaire qui continuera jusqu'à la prochaîne ligne dans le masque. @@ -2485,7 +2514,8 @@ d'utiliser la récursivité dans les masques (entre autre). L'option <literal>(?R)</literal> est fournie pour servir la cause de la récursivité. Le masque suivant résoud le - problème des parenthèses (l'option PCRE_EXTENDED est + problème des parenthèses (l'option + <link linkend="pcre.pattern.modifiers">PCRE_EXTENDED</link> est utilisée pour ignorer les espaces) : <literal>\( ( (?>[^()]+) | (?R) )* \)</literal> </para> @@ -2548,10 +2578,12 @@ propos de l'optimisation des expressions régulières. </para> <para> - Lorsqu'un masque commence par.* et que l'option PCRE_DOTALL est + Lorsqu'un masque commence par.* et que l'option + <link linkend="pcre.pattern.modifiers">PCRE_DOTALL</link> est activée, le masque est implicitement ancré par PCRE, étant donné qu'il ne peut que rechercher au début - de la chaîne. Cependant, si option PCRE_DOTALL n'est pas + de la chaîne. Cependant, si option + <link linkend="pcre.pattern.modifiers">PCRE_DOTALL</link> n'est pas activée, PCRE ne peut faire aucune optimisation car le méta-caractères point "<literal>.</literal>" ne remplace pas une nouvelle ligne, et si la chaîne @@ -2569,7 +2601,8 @@ à partir de chaque début de ligne. Si vous utilisez un tel masque avec des chaînes qui ne contiennent pas de caractères de nouvelles lignes, les meilleures performances - seront atteintes avec l'option PCRE_DOTALL, ou en ancrant le + seront atteintes avec l'option + <link linkend="pcre.pattern.modifiers">PCRE_DOTALL</link>, ou en ancrant le masque avec <literal>^.*</literal>. Cela évite à PCRE de scanner toute la chaîne pour rechercher un caractère de nouvelle ligne et recommencer la recherche.