parser!! à l'aide!

Forum destiné aux questions sur le développement : Formules, LotusScript, Java ...

parser!! à l'aide!

Messagepar drill » 19 Jan 2004 à 10:39

J'ai un un texte qui se présente de la manière qui suit : ShowPlay WaveSpeak Hello! Kiny at your service! <WEB_LINK,Intro_suite,Continue?> Pour chaque ligne, le premier mot est l'action et le reste de la ligne est le paramètres.... J'aimerais récupérer chaque action et son paramètre associé dans un tableau.Comment dois-je faire?Merci de votre aide!
drill
 

Re: parser!! à l'aide!

Messagepar oguruma » 19 Jan 2004 à 11:33

bien de manière simple voici la méthode si tu connais le LS tu devrais t'en sortircode brut de fonderie... non testéDim fichier as stringdim cmd as variantdim l as integeropen fichier for input as 1while not eof(1)redim cmd(1)line input #1, lignecmd=parserSpace(ligne)'// cmd(0) donnera la commande'// cmd(1) donnera le paramif cmd(0)<>Null then'// après ton traitement...end ifwendfunction parserSpace(ligne as string) as variantDim p as integerdim array as variantdim l as integeron error goto handlerredim array(1)l = len(ligne)p=instr(ligne," ") '// voir syntaxe exacte pour l'odre des paramètre car je ne m'en souviens jamaisif p>0 then'// récup le verbearray(0)=left$(ligne,p-1)'// récup le paramarray(1)=right$(ligne,l-p)end ifparserSpace=arrayexit functionhandler:msgbox "erreur parser " & err & " " & error$ & " ligne " & erl,16,"parser"redim array(1)parserSpace=arrayresume finfin:end function
Bien à vous

http://www.dominoarea.org/oguruma/

Les téléphones PORTABLES dans les TGV y en a MARRRE de ces voyageurs qui ne respectent pas les autres ! ARRET DES PORTABLES SVP - Merci

Fumeurs ! respectez les non fumeurs !!!
Fumeurs ! respectez la loi de février 2007 et les lieux publics !!! (ie. hall de gares)
Avatar de l’utilisateur
oguruma
Super V.I.P.
Super V.I.P.
 
Message(s) : 4086
Inscrit(e) le : 16 Déc 2004 à 08:50
Localisation : LILLE

Re: parser!! à l'aide!

Messagepar drill » 19 Jan 2004 à 18:12

merci beaucoup! :o)
drill
 

Re: parser!! à l'aide!

Messagepar Droad » 19 Jan 2004 à 19:52

Après la bataille, mais bon, au moins j'ai pas oublié le Close ;-)Type TCommand name As String param As StringEnd TypeSub Initialize On Error Goto handle_error Dim ff As Integer, filename As String, ln As String Dim cmd As TCommand ff% = Freefile filename$ = "c:\temp\data.txt" Open filename$ For Input As ff% While Not Eof(ff%) Line Input #ff%, ln$ cmd.param = Strright(ln$, " ") If Len(cmd.param)=0 Then cmd.name = ln$ Else cmd.name = Strleft(ln$, " ") End If If Len(cmd.name)>0 Then Select Case Ucase$(cmd.name) Case "SHOW": Print "Showing" Case "PLAY": Print "Playing: " & cmd.param Case "SPEAK": Print "Speaking: " & cmd.param Case Else: Print "format c:" End Select End If Wend done: Close #ff% Exit Sub handle_error: Msgbox Error$ & " (line " & Erl & ")", 16, "Damned !" Resume doneEnd Sub[%sig%]
Droad
 

Re: parser!! à l'aide!

Messagepar oguruma » 20 Jan 2004 à 16:53

ahahah oui c'est vrai.... tu fais bien de le dire mes excuses pour cet oubli de close
Bien à vous

http://www.dominoarea.org/oguruma/

Les téléphones PORTABLES dans les TGV y en a MARRRE de ces voyageurs qui ne respectent pas les autres ! ARRET DES PORTABLES SVP - Merci

Fumeurs ! respectez les non fumeurs !!!
Fumeurs ! respectez la loi de février 2007 et les lieux publics !!! (ie. hall de gares)
Avatar de l’utilisateur
oguruma
Super V.I.P.
Super V.I.P.
 
Message(s) : 4086
Inscrit(e) le : 16 Déc 2004 à 08:50
Localisation : LILLE

Re: parser!! à l'aide!

Messagepar oguruma » 20 Jan 2004 à 16:54

oui bonne remarque de droad j'ai oublié le close en fin de procédure... toutes mes excuses
Bien à vous

http://www.dominoarea.org/oguruma/

Les téléphones PORTABLES dans les TGV y en a MARRRE de ces voyageurs qui ne respectent pas les autres ! ARRET DES PORTABLES SVP - Merci

Fumeurs ! respectez les non fumeurs !!!
Fumeurs ! respectez la loi de février 2007 et les lieux publics !!! (ie. hall de gares)
Avatar de l’utilisateur
oguruma
Super V.I.P.
Super V.I.P.
 
Message(s) : 4086
Inscrit(e) le : 16 Déc 2004 à 08:50
Localisation : LILLE


Retour vers Développement

cron