Problème de 'parse | |
reboltof | 7-Mar-2014/18:25:55+1:00 |
Bonjour les reboleurs, Il y a maintenant une dizaine d'années, je me débrouillais pas mal avec le formidable parseur de REBOL. Mais n'ayant plus pratiqué depuis, je suis de nouveau confronté à mes limites. J'apprécierais votre aide pour le cas suivant. *But poursuivi*: extraire d'un fichier .html les noms de fichier en .js et en .css *Code utilisé*: file: read %sommaire.html ref: copy "" parse file [ some [ [thru "src=" copy ref to ">" (print "js")] | [thru "href=" copy ref to "/>" (print "css")] ] ] *Résultat obtenu*: "js js js js js js js" alors que des "css" sont présents J'ai essayé diffèrentes variations, mais sans meilleurs résultats. Là je coince, et je passe à l'équipe | |
deglingo | 7-Mar-2014/19:57:09+1:00 |
Bonjour Reboltof, Allez, je me lance. Ca va me faire pratiquer un peu. Voilà ma tentative : file: read %sommaire.html ref: copy "" result: copy [] css: copy [] js: copy [] parse file [ any [ [to "<link" thru {href="} copy ref to {"} [to "/>" | to "</link>"] ( append result ref append css ref )] | [to "<script" thru {src="} copy ref to {"} [to "/>" | to "</script>"] ( append result ref append js ref )] ] ] probe result probe css probe js save %result.txt result Par-contre, tu peux passer à côté des appels de CSS et de JS construits dynamiquement. | |
deglingo | 7-Mar-2014/20:37:34+1:00 |
Autre variante :file: read %sommaire.html ref: copy "" css: copy [] js: copy [] parse file [ any [ [thru {href="} | thru {src="}] copy ref to {"} ( if find ref ".css" [append css ref] if find ref ".js" [append js ref] ) ] ] probe css probe js result: union css js save %result.txt result save %css.txt css save %js.txt js | |
reboltof | 15-Mar-2014/15:43:18+1:00 |
Merci deglingo, je teste ça le plus rapidement possible ! | |
Login required to Post. |