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 :

Tester si chaîne contenue dans une autre [RegEx]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2011
    Messages : 146
    Par défaut Tester si chaîne contenue dans une autre
    Bonjour à tous.

    Mon problème est le suivant :

    J'aimerais tester si une chaîne fait au moins 4 caractères, et la comparer à une autre pour savoir si elle est contenue dans celle-ci. Le tout en la mettant en minuscule et en supprimant les éventuels accents.

    Voilà, je pense qu'il faut une expression régulière pour ça mais je suis incapable d'en sortir une de la sorte..

    En espérant trouver de l'aide, merci d'avance!

  2. #2
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2011
    Messages : 64
    Par défaut
    Tu peux tres bien le faire sans à mon avis !

    J'aimerais tester si une chaîne fait au moins 4 caractères
    Solution
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (strlen($maVariable) > 4) {
    ...
    }
    la comparer à une autre pour savoir si elle est contenue dans celle-ci
    Solution
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (strpos($maGrandeVariable, $maVariable) !== false) {
    ...
    }
    Le tout en la mettant en minuscule et en supprimant les éventuels accents.
    Solution
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $accents = 'ÁáÀàÂâÄäÃãÅåÇçÉéÈèÊêËëÍíÌìÎîÏïÑñÓóÒòÔôÖöÕõÚúÙùÛûÜüÝýÿ';
    $sans = 'AaAaAaAaAaAaCcEeEeEeEeIiIiIiIiNnOoOoOoOoOoUuUuUuUuYyy'
    $maVariable_sans_accents = strtr($maVariable, $accents,$sans);
    $maVariable_min = strtolower($maVariable_sans_accents);

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2011
    Messages : 146
    Par défaut
    Merci de ta réponse.

    Effectivement ça marche, mis à part les accents, voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    <?php
    if( (isset($_POST['actionDirecte'])) && (strlen($_POST['actionDirecte']) >= 4) ){
    	$actionDirecte= $_POST['actionDirecte'];
     
    	$accents = 'ÁáÀàÂâÄäÃãÅåÇçÉéÈèÊêËëÍíÌìÎîÏïÑñÓóÒòÔôÖöÕõÚúÙùÛûÜüÝýÿ';
    	$sansAccents = 'AaAaAaAaAaAaCcEeEeEeEeIiIiIiIiNnOoOoOoOoOoUuUuUuUuYyy';
    	$actionDirecte = strtr($actionDirecte, $accents, $sansAccents);
    	$actionDirecte = strtolower(trim($actionDirecte));
     
     
    	if(strpos('reception', $actionDirecte) !== false) {
    		?>
    		<script type="text/javascript" charset="utf-8">
    			window.location.replace("reception");
    		</script>
    		<?php
    	}
    	elseif(strpos('statistiques', $actionDirecte) !== false) {
    		?>
    		<script type="text/javascript" charset="utf-8">
    			window.location.replace("statistiques");
    		</script>
    		<?php
    	}
    }
    ?>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 02/03/2014, 14h08
  2. Tester si un chaîne est contenue dans une autre
    Par JonathanF dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 03/10/2011, 20h59
  3. Vérifier si une chaîne de caractère est contenu dans une autre
    Par Marvelll dans le forum Débuter avec Java
    Réponses: 7
    Dernier message: 22/02/2010, 14h54
  4. Changer un caractère dans une chaîne contenue dans une phrase
    Par cirtey dans le forum Algorithmes et structures de données
    Réponses: 9
    Dernier message: 07/03/2007, 16h16
  5. Réponses: 3
    Dernier message: 13/06/2006, 16h36

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