IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[preg_match] comment extraire qu'une partie d'une string


Sujet :

Langage PHP

  1. #1
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 102
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 102
    Points : 953
    Points
    953
    Par défaut [preg_match] comment extraire qu'une partie d'une string
    Bonjour,
    Je suis as un pro des regex et je dois faire un truc de particulier
    J'ai des fichier qui sont nomé ainsi
    page_[id]_[id_2]-large.jpg

    Je dois
    1) véfigier la valeur de [id].
    2) si la valeur à comparé est égale à [id], je dois incrémenté [id_2].

    [id] et [id_2] sont toujours des nombres. [id_2] peut avoir 1 à 3 caractère soit de 1 à 999

    J'ai aucune idée comment faire pour véfier [id] [id_2] car en plus il faut aussi vérifier [id_2] pour la valeur au nouveau ficher uploadé soit unique.

    Pourriez-vous m'aider pour ce problème?
    je connais rein en régex.

    Milles merci pour votre aide

  2. #2
    Membre confirmé
    Avatar de Nowwis
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2009
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2009
    Messages : 406
    Points : 498
    Points
    498
    Par défaut
    Bonjour,

    Essaie ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $regex = '/^page_([0-9]{1,3})_([0-9]{1,3})-large.jpg$/';
    $chaine_a_tester = page_6_8-large.jpg
    if(preg_match($regex, $chaine_a_tester, $tab))
    {
    	$id = $tab[0];
    	$id2 = $tab[1];
            echo "id : $id  -  $id2 : $id2";
    }
    else
    {
    	echo 'Mauvais format';
    }
    Essaie également de comprendre les regex, c'est très utile, et pas si compliqué que ça quand on s'y mets un petit peu

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Février 2007
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 102
    Points : 66
    Points
    66
    Par défaut
    Salut Simdu80, je me suis permis d'apporter qlq modifications, sur ton script, que je crois etre importantes .

    Salut recent, ca devrait resoudre ton probleme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    preg_match("#^([0-9]{1,2})\*([0-9]{1,2})\*([0-9]{1,2})$#",$_POST['vote'],$match);
    $match[1]//premières parentheses capturantes
    $match[2]//2iemes parentheses capturantes
    $match[3]//3iemes parentheses capturantes

Discussions similaires

  1. donner une couleur a une partie d'une forme
    Par ralf91 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 04/04/2008, 18h02
  2. Réponses: 1
    Dernier message: 04/04/2008, 13h14
  3. Sélectionner seulement une partie d'une valeur d'une cellule
    Par ArthurO0O dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 20/08/2007, 12h05
  4. masquer une partie d'une vidéo par une banniere
    Par lezabour dans le forum Général Conception Web
    Réponses: 1
    Dernier message: 16/10/2006, 17h47
  5. copier une partie d'une image vers une autre
    Par gregcat dans le forum Langage
    Réponses: 1
    Dernier message: 14/04/2006, 14h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo