projman/hlp/fr/tcl/regexp.htm

58 lines
6.6 KiB
HTML
Raw Normal View History

2015-10-19 13:27:31 +03:00
<HTML><HEAD>
<BASEFONT FACE="Times New Roman" SIZE="2" COLOR="#000000">
</HEAD>
<BODY>
<div><H3><b>regexp&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Commandes Internes Tcl
</b></H3></div>
<HR ALIGN="center"><br>
<div><b>NOM</b></div>
<div ALIGN="LEFT" style="margin-left: 51px;">regexp - Compare une expression rationelle <20> une cha<68>ne
</div><br>
<div><b>SYNTAXE</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;"><b>regexp </b>?<i>switches</i>? <i>exp string </i>?<i>matchVar</i>? ?<i>subMatchVar subMatchVar ...</i>?&nbsp; <br>
</div><br>
<div><b>DESCRIPTION</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;">Determine si l'expression rationelle <i>exp</i> correspond <20> tout ou partie de <i>string</i> et retourne 1 si vrai, 0 si faux, <20> moins que <b>-inline</b> soit sp<73>cifi<66> (voir ci-dessous). (la correspondance des expressions rationelles est d<>crite dans la page de r<>f<EFBFBD>rence de <A><b>re_syntax</b></A>.) </div>
<div ALIGN="LEFT" style="margin-left: 51px;">Si des arguments suppl<70>mentaires sont sp<73>cifi<66>s apr<70>s <i>string</i> alors ils sont trait<69>s comme les noms des variables dans lesquelles renvoyer l'information au sujet de la ou les parties de <i>string</i> correspondant <20> <i>exp</i>. <i>MatchVar</i> sera fix<69> <20> la partie de <i>string</i> correspondant <20> <i>exp</i> La premi<6D>re <i>subMatchVar</i> contiendra les caract<63>res de <i>string</i> qui correspondent <20> la sous expression entre parenth<74>ses la plus <20> gauche dans <i>exp</i>, la <i>subMatchVar</i> suivante contiendra les caract<63>res qui correspondent <20> la sous expression entre parenth<74>ses suivante <20> droite dans <i>exp</i>, et ainsi de suite. </div>
<div ALIGN="LEFT" style="margin-left: 51px;">Si les arguments initiaux <20> <b>regexp</b> commencent avec <b>-</b> alors ils sont trait<69>s comme des commutateurs. Les commutateurs suivants sont couramment support<72>s: </div>
<div ALIGN="LEFT" style="margin-left: 51px;">
<DL>
<DT><b>-about</b><br></DT><DD>Au lieu de tenter de correspondre <20> une expression rationelle, retourne une liste contenant l'information concernant l'expression rationelle Le premier <20>l<EFBFBD>ment de la liste est un compte des sous expressions Le second <20>l<EFBFBD>ment est une liste de noms de propri<72>t<EFBFBD> qui decrivent plusieurs attributs de l'expression rationelle. Ce switch est con<6F>u dans un but de debugging.
</DD>
<DT><b>-expanded</b><br></DT><DD>Active l'usage de la syntaxe <20>tendue des expressions rationelles o<> l'espace et les commentaires sont ignor<6F>s. Identique <20> la sp<73>cification de l'option <b>(?x)</b> (voir METASYNTAXE, ci-dessous).
</DD>
<DT><b>-indices</b><br></DT><DD>Change ce qui est stock<63> dans les <i>subMatchVar</i>s Au lieu de stocker les caract<63>res correspondants de <i>string</i>, chaque variable contiendra une liste de deux cha<68>nes d<>cimales donnant les indices dans <i>string</i> des premiers et derniers caract<63>res dans l'intervalle correspondant des caract<63>res.
</DD>
<DT><b>-line</b><br></DT><DD>Active la correspondance sensible au saut de ligne Par d<>faut, le saut de ligne est un caract<63>re ordinaire sans signification sp<73>ciale Avec ce flag, l' expression crochets `&#91;^' et `.' ne correspond jamais <20> newline, `^' correspond <20> une cha<68>ne vide apr<70>s toute newline en plus de sa fonction normale, et `&#36;' correspond une cha<68>ne vide avant toute newline en en plus de sa fonction normale Ce flag est <20>quivalent <20> la sp<73>cification <20> la fois de&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <b>-linestop</b> et <b>-lineanchor</b>, ou de l'option <b>(?n)</b> (voir METASYNTAXE, ci-dessous).
</DD>
<DT><b>-linestop</b><br></DT><DD>Change le comportement de l'expression crochets `&#91;^' et `.' de fa<66>on <20> ce qu'elles s'arr<72>tent aux saut de lignes Ceci est identique <20> la sp<73>cification de l'option <b>(?p)</b> (voir METASYNTAXE, ci-dessous).
</DD>
<DT><b>-lineanchor</b><br></DT><DD>Change le comportement de `^' et `&#36;' (les &quot;ancres&quot;) de fa<66>on <20> ce qu'ils correspondent au d<>but et <20> la fin d'une ligne respectivement Ceci est identique <20> la sp<73>cification de l'option <b>(?w)</b> (voir METASYNTAXE, ci-dessous).
</DD>
<DT><b>-nocase</b><br></DT><DD>Cause l'interpr<70>tation des caract<63>res majuscules de <i>string</i> comme minuscules pendant le traitement des correspondances.
</DD>
<DT><b>-all</b><br></DT><DD>Teste la correspondance de l'expression rationelle le plus grand nombre de fois possible dans la cha<68>ne, retournant le nombre total de correspondances trouv<75>es Si sp<73>cifi<66> avec des variables de correspondance, ne contiendront l'information que pour la derni<6E>re correspondance.
</DD>
<DT><b>-inline</b><br></DT><DD>Provoque le renvoi, comme liste, des donn<6E>es qui auraient <20>t<EFBFBD> autrement plac<61>es dans des variables de correspondance Quand <b><EFBFBD>inline </b>est utilis<69>e, les variables de correspondance ne peuvent pas <20>tre sp<73>cifi<66>es Si utilis<69> avec <b>-all</b>, la liste sera concat<61>n<EFBFBD>e <20> chaque it<69>ration, de ce fait une liste plate est toujours renvoy<6F>e Pour chaque it<69>ration, la commande ajoutera les correspondances suppl<70>mentaires aux donn<6E>es, plus un <20>l<EFBFBD>ment pour chaque sous expression dans l'expression rationelle. Exemples: <CODE><PRE>
regexp -inline -- &#123;&#92;w(&#92;w)} &quot; inlined &quot;<br>
=&gt; &#123;in n}<br>
regexp -all -inline -- &#123;&#92;w(&#92;w)} &quot; inlined &quot;<br>
=&gt; &#123;in n li i ne e}</CODE>
</PRE>
</DD>
<DT><b>-start</b> <i>index</i><br></DT><DD>Sp<EFBFBD>cifie un index de caract<63>re dans une cha<68>ne pour commencer la correspondance <20> une expression rationelle A l'utilisation de ce switch, `^' ne correspond plus au d<>but de la ligne, et &#92;A correspond toujours au d<>but de la cha<68>ne <20> <i>index</i> Si <b>-indices</b> est sp<73>cifi<66>, les indices seront index<65>s en partant du&nbsp; d<>but de la cha<68>ne d'entr<74>e. <i>index</i> sera contraint au limites de la cha<68>ne d'entr<74>e.
</DD>
<DT><b>--</b><br></DT><DD>Marque la fin des commutateurs L'argument suivant ceci sera trait<69> comme <i>exp</i> m<>me s'il commence avec un <b>-</b>.
</DD>
</DL>
</div>
<div ALIGN="LEFT" style="margin-left: 51px;">S'il y a plus de <i>subMatchVar</i> que de sous expressions entre parenth<74>ses dans <i>exp</i>, ou si une sous expression particuli<6C>re dans <i>exp</i> ne correspond pas <20> la cha<68>ne (ex. parcequ'il etait dans une partie de l'expression qui n'a pas <20>t<EFBFBD> trouv<75>e), alors la <i>subMatchVar</i> correspondante sera fix<69>e <20> &quot;<b>-1-1</b>&quot; si <b>-indices</b> a <20>t<EFBFBD> sp<73>cifi<66> ou <20> une cha<68>ne vide autrement
</div><br>
<div><b>VOIR EGALEMENT</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;"><A HREF="150.htm">re_syntax</A>(n)&nbsp; </div><br>
<div>Derni<EFBFBD>re r<>vision: 8.3</div>
<br>
<br><div ALIGN="CENTER"><A HREF="index.htm"><b>Index</b></A>&nbsp;&nbsp;<A HREF="151.htm"><b>Pr<EFBFBD>c<EFBFBD>dent</b></A>&nbsp;&nbsp;<A HREF="153.htm"><b>Suivant</b></A></div>
</BODY></HTML>