Version complète: sur le forum Webmaster Hub : Perl et expressions regulieres
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > Asp, Java, Cfm, autres.
Nanane
Bonjour

Dans mon projet, je doit pouvoir editer des pages web (html), j'ai ecrit un script Php pour le moment, mais une occasion d'apprendre le Perl ne se refuse pas... Alors j'ai accepté de transcoder happy.gif (je n'ai pas le choix en fait...)
Le but final est de restreindre au maximum les donnees a envoyer a un wysiwyg pour eviter trop de desagrements.

Je n'ai jamais fait de Perl et pour l'instant j'ai passé une journée a lire ceci


J'aurai aimé savoir si Parser du HTML avec des expressions regulieres etait convenable... quelquechose comme :

$html =~ m/^<html.*><head>(.*)<\/head><body.*>(.*)<\/body><\/html>$/

pour ensuite faire :
$head = $1;
$body = $2;

Aurai je bien compris l'interêt des expressions régulières? et tout aussi bien compris mon cours sur les analyseurs syntaxiques? tongue.gif
Je demande a voir... happy.gif
Ce script servirai uniquement au backoffice (oui j'evite de donner le droit aux visiteurs de modifier mes pages ;p), donc peu de connexions (donc d'executions) simultanées sont prevues.

Mais le site dont je m'occupe accueille entre 20 et 30 milles visiteurs quotidiens... donc il faudrait que le script soit le plus léger possible pour ne pas ralentir les visiteurs.
Nanane
Bon apres 2 belles nuits blanches et 2 jours pleins sans pause le midi (de quoi se plaint on en france...)

J'ai fait une fonction qui crée un arbre en parsant le fichier html (avec des objets "noeud" et "feuille"). et stocke pour chaque balise, son nom, ses options et un tableau de references vers ses enfants (les balises et contenus intérieurs).

Je prends aussi en compte les balises auto fermantes, link, img, etc...
Pratique pour insérer des éléments ou je le souhaite...

Ca m'aidera sans doute pour un autre probleme pour lequel j'ai posté section PHP smile.gif
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.