Awk: faire une comparaison exacte de strings

Fermé
farphe - 14 janv. 2009 à 11:32
asevere Messages postés 13084 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024 - 14 janv. 2009 à 16:26
Bonjour,

je voudrais effectuer une comparaison exacte entre 2 string avec le langage AWK. En fait pour resumer voila la situation:

str1="toto1 toto2 toto3..."
str2="toto"

si je fais match(str1,str2) alors le resultat est vrai alors que je voudrais qu'il soit faux (donc que le match(...) retourne 0).

Est-ce que c'est possible?? j'ai essaye des dizaines de syntaxes et je n'y arrive pas

merci!!
Tanguy

1 réponse

asevere Messages postés 13084 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024 426
14 janv. 2009 à 16:26
Bonjour,

Visiblement, match, fonctionne bien ;-)
       match(s, r)
              the position in s where the regular expression r occurs, or 0 if
              it does not.  The variables RSTART and RLENGTH are  set  to  the
              position and length of the matched string.
La tu cherches si "toto" est présent dans "toto1 toto2 toto3" ce qui est visiblement le cas...

Pourquoi ne pas tout simplement faire un teste d'egalité ?
str1 == str2
0