next up previous contents index
suivant: Les fonctions utilisateur monter: Les actions précédent: Les actions   Table des matières   Index

Les fonctions prédéfinies

La liste des fonctions suivantes n'est pas exhaustive. Elle donne celles qui sont usuellement utilisées. Les tableaux explicitent ces fonctions. Le tableau [*] donne une liste de fonctions acceptant un argument de type numérique, le tableau [*] donne une liste de fonctions acceptant un argument de type "chaîne de caractères".


Tableau: Fonctions acceptant un argument de type numérique.
Fonction Description
sqrt(arg) renvoie la racine carré de l'argument.
log(arg) renvoie le logarithme népérien de l'argument.
exp(arg) renvoie l'exponentiel de l'argument.
int(arg) renvoie la partie entière15.3 de l'argument..



Tableau: Fonctions acceptant des arguments de type alphanumérique.
Fonction Description
length15.4 renvoie la longueur de l'enregistrement courant.
length(arg) renvoie la longueur de la chaine passée en argument.
substr(arg,m[,n]) renvoie la sous chaîne de la chaine "arg" commençant à la position "m" et de longueur "n". Le premier caractère est à la position "$1$"15.5. Si "n" n'est pas spécifié, la fonction "substr" renvoie la fin de l'argument à partir de la position "m".
index($str_1$,$str_2$) renvoie la position de "$str_2$" dans la chaîne "$str_1$". Si "$str_1$" ne contient pas la chaîne "$str_2$", "index" renvoie "$0$"15.6.
print [$arg_1$[,$arg_2$],$\cdots$] [> dest] affiche les arguments "$arg_1$", "$arg_1$", $\cdots$ sur la sortie standard sans les formater. Avec l'option "dest", l'affichage est redirigé sur le fichier "dest" au lieu de la sortie standard.
printf(format,$arg_1$,$arg_2$,$\cdots$) [> dest] affiche les arguments $arg_1$, $arg_2$, $\cdots$ sur la sortie standard après les avoir formatés à l'aide de la chaîne de contrôle "format". Avec l'option "> dest", l'affichage est redirigé sur le fichier "dest" au lieu de la sortie standard.
sprintf(format,$arg_1$,$arg_2$,$\cdots$) renvoie une chaîne de caractères formatée intégrant $arg_1$, $arg_2$, $\cdots$ correspondant aux instruction de formatage en fonction de la chaîne de contrôle "format". Attention, cette fonction a un comportement différent de celui de la fonction "sprintf(3)".


Remarque 15..1 :


Pour plus de précisions sur les instructions de formatage, reportez-vous à l'annexe [*].

Exemple 15..5 :


Exemple d'utilisation des fonctions prédéfinies :
if (length > 80 ) {
    print "la ligne no: ", NR, " du fichier ",FILENAME, \
        "est trop longue"
}
lentexte += length ($2)
val=sqrt (cumul)
val = log(sqrt(cumul))
val = exp(log(cumul))
modulo = int(cumul/100) * 100
codepostal = substr("75006 Paris",1,5)
pos = index("75006 Paris","Paris")      renvoie 7
print $1,$2,cumul
print "resultats", cumul > /tmp/result.tmp
print "cumuls", $1+$2 > $3
nom = sprintf ("%10.10s %10.10s .", nom, prenom)


next up previous contents index
suivant: Les fonctions utilisateur monter: Les actions précédent: Les actions   Table des matières   Index
baudry@esme.fr