Page 1 sur 1

REGEX

Posté : 31 août 2006, 19:21
par marvllt
bonjour a tous

donc voila j'aimerai capturer une partie d'une page qui commence par $texte et qui fini par );

si vous ne voulez pas me passer le code passer moi un bon lien ou je pourrai apprendre le REGEX facilement et rapidement

merci d'avance

A+, Marvllt

Posté : 31 août 2006, 19:33
par Cyrano
Les REGEX ne s'apprennent ni facilement ni rapidement. Mais grossomodo, le masque de capture selon ce que tu cherches est relativement basique :
- commençant par :arrow: ^ Ce symbole indique que ce qui suit doit être au début de la chaine recherchée
- $texte
- suivi par en principe n'importe quoi :arrow: .* le point représente "n'importe quel caractère"
- ); :arrow: \); note, la parenthèse est un caractère spécial des expressions régulières, donc on l'échappe avec un \
- se terminant par :arrow: $ Ce qui précède le "$" doit terminer la chaine recherchée
Ce qui nous donne:
<?php
$masque = "#^(". $texte .").*\);$#";
?>
Pour les tutos, il y en a un sur le sujet sur le site de PHPFrance.

Posté : 31 août 2006, 19:37
par marvllt
j'ai pas tout compris dans ce que tu viens de me dire :oops: j'en fais quoi du $masque ??

Posté : 31 août 2006, 19:41
par Cyrano
Tu l'utilise en combinaison avec les fonctions telles que preg_match() par exemple.

Posté : 31 août 2006, 23:02
par marvllt
ok ben j'ai rien compris tampis ^^

Posté : 31 août 2006, 23:09
par Cyrano
Je suis persuadé du contraire, mais il est possible que certains éléments t'échappent: si tu ne précises pas lesquels, on aura du mal à deviner.

Si tu as suivi le lien vers la doc sur preg_match(), tu as du voir les exemples. Là, il y a peut-être quelque chose qui pour toi est totalement abstrait, mais tu as sans doute compris d'autres points. non ?

Re: REGEX

Posté : 05 sept. 2006, 09:50
par marvllt
oui mais ma page ne commence pas par $texte c'est la partie que je veux capturer qui commence par $texte donc si j'utilise preg_match_all ça ne va pas ???

Posté : 05 sept. 2006, 11:10
par Nathaire
Donne nous un exemple e texte que tu voudrais capturer...

Posté : 05 sept. 2006, 12:09
par marvllt

Code : Tout sélectionner

<? $page=getvar('p'); switch($page) { //inscription case '1': $texte = array( 'titre' => 'Inscription', 'pseudo' => 'Votre pseudo', 'mdp' => 'Votre mot de passe', 'titre' => 'Inscription', 'verif_mdp' => 'Vérification', 'mail' => 'E-mail', 'ok' => 's\'inscrire', 'note' => '*Note: le multicomptisme est interdit et bannit dans le jeu! <br>Choisissez un pseudonyme (Attention: seul les lettres les chiffres les espaces et les "_" ou "-" sont acceptés dans les pseudos!).<br>Rentrez votre e-mail. Veillez à ce qu\'il soit valable, car vous recevrez une clé pour valider votre inscription à cette adresse.<br>Entrez votre mot de passe top secret que personne connait, je ne saurais que trop vous conseiller d\'éviter les mots de pass du genre "azerty" ou "1234"... Dans la deuxième case, répétez votre mot de passe une seconde fois.' ); break; //inscrire case'2': $texte = array( 'oubli' => 'Erreur, vous avez oublié un champ obligatoire.', 'erreur_mdp' => 'Vos mot de passe ne sont pas identique.', 'mdp_petit' => 'Erreur, vous devez rentrer un mot de passe plus court.', 'mdp_grand' => 'Erreur, vous devez rentrer un mot de passe plus long.', 'erreur_login' => 'Erreur, vous devez rentrer un login valide.', 'use_login_mail'=> 'Ce login est déjà utilisé, veuillez en choisir un autre.<br>Cette adresse e-mail est déjà utilisée, veuillez en choisir une autre.', 'use_login' => 'Ce login est déjà utilisé, veuillez en choisir un autre.', 'use_mail' => 'Cette adresse e-mail est déjà utilisée, veuillez en choisir une autre.', 'envoie_mail' => 'votre clef de validation vous sera envoyé par mail dans la demi heure. Notez bien cette dernière car vous en aurez besoin pour confirmer votre inscription. Pour ce faire, loguez vous en entrant votre login et mdp à gauche.', 'ton_login' => 'Votre login est:', 'retour' => 'retour', 'ton_mail' => 'votre adresse e-mail est:', 'textmail' => '<html><body>Bonjour %1\$s,<br><br><br></b>Vous vous etes inscrit sur le jeu online <a href="http://www.xxxx.info">www.xxxx.info</a>, voici vos identifiants:<br>Votre login est : <b>%1\$s</b><br>votre mot de passe est : <b>%2\$s</b>. <br>Pour valider votre inscription cliquez sur ce lien %3\$s.<br>Le forum vous permetra de vous faire des alliés et de comprendre le monde de xxx, mais aussi de proposer vos idées pour le devellopement du jeu, etc...<br>Merci, et à bientot!<br>L\'equipe de xxxx<br></body></html>' ); break; ?>
je m'explique tout mon texte je le mets dans des array pour pouvoir faire un site multilingue et donc je voudrai pouvoir selectionner les $texte un par un