Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1299 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [Résolu]Script : extraction des appels de fonctions

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Résolu]Script : extraction des appels de fonctions

n°1125077
nifnef
Posté le 20-06-2005 à 11:35:14  profilanswer
 

Bonjour,
 
j'essaie de me faire un script pour extraire d'un fichier les appels de fonction. J'ai pensé que la définition d'un appel de fonction serait : "blabla("  .A partir de là, j'ai essayé  
grep -E "[^(!= ]+[(]" test.c | sed -r "s/.* ([^(!= ]+)[(](.*)/\1/g"
et
grep -E "[(]?[a-zA-Z_]*+[(]" test.c | sed -r "s/.* ([(]?[a-zA-Z_]*+)[(](.*)/\1/g"
 
mais je n'obtient pas de résultat satisfaisant, surtout que le fichier n'est pas normalisé (espaces irréguliers autour des affectations par exemple, on a tout de même pas d'espace entre la fonction et la "(" ). J'obtiens bien les appels de fonction mais avec les arguments... et je voudrai aussi virer  les parenthèses. Les deux donnent le même résultat, pas mal, mais je n'arrive pas non plus à virer les '=' comme dans  i=fonction() comment dire "une chaîne qui contient des lettres et _ mais pas de ="?
 
Merci pour les pistes que vous me donnerez!
 
Nifnef


Message édité par nifnef le 20-06-2005 à 13:19:11
mood
Publicité
Posté le 20-06-2005 à 11:35:14  profilanswer
 

n°1125078
black_lord
Truth speaks from peacefulness
Posté le 20-06-2005 à 11:35:52  profilanswer
 

man indent pour retapper un peu ton fichier :)


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
n°1125136
nifnef
Posté le 20-06-2005 à 12:42:51  profilanswer
 

black_lord a écrit :

man indent pour retapper un peu ton fichier :)


J'aimerai autant que possible ne pas y toucher...
Je l'ai fait et c'est cool, je n'ai plus les pb de tablations non plus  :wahoo:  
Voilà mon dernier essai en date, c'est pas mal, juste qu'il faudrait pouvoir simplifier l'expression reguliere!
grep -E -o "[^\(!= *\)\>\<\)&\+\-\/\*]+[(]" machin.c
 
Je crois que mon problème est résolu!
Merci!


Message édité par nifnef le 20-06-2005 à 13:18:45

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [Résolu]Script : extraction des appels de fonctions

 

Sujets relatifs
gif dans un script php gallerieupload limité chez free (copy()) ->> finte (pieces jointes imap php )
[resolu] Empecher <xyz></xyz> transformé en <xyz/> (xsl)Image transparente sur texte ou script,....
c'est quoi qui cloche dans mon script[resolu] connection database via php et ftp sur free
plugin tomcat pour eclipse [Résolu]lancer un script PHP depuis serveur
pb tomcat 5.5.9 [Résolu]Peux--t-on stocker les fichiers d'un script dans un dossier à part ?
Plus de sujets relatifs à : [Résolu]Script : extraction des appels de fonctions


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR