summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/xstring/xstring_doc_fr.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/latex/xstring/xstring_doc_fr.tex')
-rwxr-xr-xMaster/texmf-dist/doc/latex/xstring/xstring_doc_fr.tex56
1 files changed, 50 insertions, 6 deletions
diff --git a/Master/texmf-dist/doc/latex/xstring/xstring_doc_fr.tex b/Master/texmf-dist/doc/latex/xstring/xstring_doc_fr.tex
index 589c76dee83..dff8c59a2aa 100755
--- a/Master/texmf-dist/doc/latex/xstring/xstring_doc_fr.tex
+++ b/Master/texmf-dist/doc/latex/xstring/xstring_doc_fr.tex
@@ -27,7 +27,7 @@
\makeatletter
\newcommand*\exemple{\@ifstar{\def\frontiere{|}\@xs@MakeVerb}{\def\frontiere{}\@xs@MakeVerb}}
-\def\@xs@afterreadverb#1{%
+\long\def\@xs@afterreadverb#1{%
\normalexpandarg
\tokenize\cs@resultat{#1}%
\fullexpandarg
@@ -82,6 +82,7 @@
\item une chaîne en contient elle une autre au moins $n$ fois ?
\item une chaîne commence t-elle ou finit-elle par une autre ? etc.
\item une chaîne représente t-elle un entier relatif ? Un nombre décimal ?
+ \item deux chaînes sont-elles égales ?
\end{itemize}
\item[$\triangleright$] des extractions de chaînes :
\begin{itemize}
@@ -305,7 +306,7 @@ Teste si \argu{chaine} se termine par \argu{chaineA}, et exécute \argu{vrai} da
Teste si \argu{nombre} est un nombre entier relatif, et exécute \argu{vrai} dans l'affirmative, et \argu{faux} dans le cas contraire.\smallskip
-Si le test est faux pour cause de caractères non autorisés, la séquence de contrôle \verb|\@xs@afterinteger| contient la partie illégale de \argu{number}.\medskip
+Si le test est faux pour cause de caractères non autorisés, la séquence de contrôle \verb|\@xs@afterinteger| contient la partie illégale de \argu{nombre}.\medskip
\exemple|\IfInteger{13}{vrai}{faux}|
\exemple|\IfInteger{-219}{vrai}{faux}|
@@ -317,17 +318,16 @@ Si le test est faux pour cause de caractères non autorisés, la séquence de co
\exemple|\IfInteger{-}{vrai}{faux}|
\exemple|\IfInteger{0000}{vrai}{faux}|
-\subsubsection{IfDecimal}
-
+\subsubsection{IfDecimal}\label{ifdecimal}
\verb|\IfInteger|\ARGU{nombre}\ARGU{vrai}\ARGU{faux}
\smallskip
Teste si \argu{nombre} est un nombre décimal, et exécute \argu{vrai} dans l'affirmative, et \argu{faux} dans le cas contraire.\smallskip
-Les compteurs \verb|\integerpart| et \verb|\decimalpart| contiennent les parties entières et décimales de \argu{number}.
+Les compteurs \verb|\integerpart| et \verb|\decimalpart| contiennent les parties entières et décimales de \argu{nombre}.
-Si le test est faux pour cause de caractères non autorisés, la séquence de contrôle \verb|\@xs@afterdecimal| contient la partie illégale de \argu{number}, alors que si le test est faux parce que la partie décimale après le séparateur décimal est vide, elle contient \guill{X}.\medskip
+Si le test est faux pour cause de caractères non autorisés, la séquence de contrôle \verb|\@xs@afterdecimal| contient la partie illégale de \argu{nombre}, alors que si le test est faux parce que la partie décimale après le séparateur décimal est vide, elle contient \guill{X}.\medskip
\begin{Conditions}
\item Le séparateur décimal peut être un point ou une virgule;
@@ -350,6 +350,50 @@ Si le test est faux pour cause de caractères non autorisés, la séquence de co
\exemple|\IfDecimal{+}{vrai}{faux}|
\exemple|\IfDecimal{-}{vrai}{faux}|
+\subsubsection{IfStrEq}
+
+\verb|\IfStrEq|\ARGU{chaineA}\ARGU{chaineB}\ARGU{vrai}\ARGU{faux}
+\smallskip
+
+Teste si les chaînes \argu{chaineA} et \argu{chaineB} sont égales, c'est-à-dire si elles contiennent successivement les mêmes caractères dans le même ordre. Exécute \argu{vrai} dans l'affirmative, et \argu{faux} dans le cas contraire.\smallskip
+
+\exemple|\IfStrEq{a1b2c3}{a1b2c3}{vrai}{faux}|
+\exemple|\IfStrEq{abcdef}{abcd}{vrai}{faux}|
+\exemple|\IfStrEq{abc}{abcdef}{vrai}{faux}|
+\exemple|\IfStrEq{3,14}{3,14}{vrai}{faux}|
+\exemple|\IfStrEq{12.34}{12.340}{vrai}{faux}|
+\exemple|\IfStrEq{abc}{}{vrai}{faux}|
+\exemple|\IfStrEq{}{abc}{vrai}{faux}|
+\exemple|\IfStrEq{}{}{vrai}{faux}|
+
+\subsubsection{IfEq}
+
+\verb|\IfStrEq|\ARGU{chaineA}\ARGU{chaineB}\ARGU{vrai}\ARGU{faux}
+\smallskip
+
+Teste si les chaînes \argu{chaineA} et \argu{chaineB} sont égales, \emph{sauf} si \argu{chaineA} et \argu{chaineB} contiennent des nombres, auquel cas la macro teste si les nombres sont égaux. Exécute \argu{vrai} dans l'affirmative, et \argu{faux} dans le cas contraire.\smallskip
+
+\begin{Conditions}
+ \item La définition de \emph{nombre} est celle évoquée dans la macro \verb|IfDecimal| (voir page~\pageref{ifdecimal}), et donc :
+ \item Les signes \guill{+} sont facultatifs;
+ \item Le séparateur décimal peut être indifféremment la virgule ou le point;
+ \item Il est possible d'évaluer des expressions algébriques en utilisant la primitive \verb|\numexpr| de $\varepsilon$-\TeX{}, en gardant à l'esprit qu'elle n'opère que sur des entiers et qu'elle arrondit les résultats non entiers à l'entier le plus proche; il vaut donc mieux l'éviter lorsque les résultats ne sont pas entiers.
+\end{Conditions}
+
+\exemple|\IfEq{a1b2c3}{a1b2c3}{vrai}{faux}|
+\exemple|\IfEq{abcdef}{ab}{vrai}{faux}|
+\exemple|\IfEq{ab}{abcdef}{vrai}{faux}|
+\exemple|\IfEq{12.34}{12,34}{vrai}{faux}|
+\exemple|\IfEq{+12.34}{12.340}{vrai}{faux}|
+\exemple|\IfEq{10}{+10}{vrai}{faux}|
+\exemple|\IfEq{-10}{10}{vrai}{faux}|
+\exemple|\IfEq{+0,5}{,5}{vrai}{faux}|
+\exemple|\IfEq{1.001}{1.01}{vrai}{faux}|
+\exemple|\IfEq{3*4+2}{14}{vrai}{faux}|
+\exemple|\IfEq{\number\numexpr3*4+2}{14}{vrai}{faux}|
+\exemple|\IfEq{0}{-0.0}{vrai}{faux}|
+\exemple|\IfEq{}{}{vrai}{faux}|
+
\subsection{Les macros renvoyant une chaîne}
\subsubsection{StrBefore}
\verb|\StrBefore|\arguC{nombre}\ARGU{chaine}\ARGU{chaineA}\arguC{nom}