Détection d'un numéro dans une chaine de caractère
- Accueil
- Forum
- Programmation
- PHP
- Détection d'un numéro dans une chaine de caractère
guewen Le 26 juillet 2016 à 11:57 (Édité le 25 janvier 2019 à 17:52)
Je cherche depuis longtemps un système permettant de trouver une numéro dans une chaîne de caractère.
Suite à la sortie du dernier tuto, je me suis dit que c'était l'occasion de poser la question (n'arrivant pas à faire fonctionner son code..)
Merci à tous si vous avez des propositions
Blast0Kd Le 27 juillet 2016 à 18:23 (Édité le 1 janvier 1970 à 01:00)
guewen Le 27 juillet 2016 à 18:30 (Édité le 1 janvier 1970 à 01:00)
Je vais vous faire un exemple pour mieux comprendre mon attente :
Appelez moi au 0658585858 svp !
J'aimerai un code permettant de détecter un numéro de téléphone dans une dédicace par exemple et de mettre ce numéro de téléphone en rouge.
Sinon, on affiche tout simplement la dédicaces telle qu'est est.
@Dwardower @Blast0Kd
Blast0Kd Le 27 juillet 2016 à 19:26 (Édité le 1 janvier 1970 à 01:00)
guewen Le 27 juillet 2016 à 19:42 (Édité le 1 janvier 1970 à 01:00)
Blast0Kd
[/url]
guewen Le 27 juillet 2016 à 19:54 (Édité le 1 janvier 1970 à 01:00)
Non, je travail dans un endroit où on reçoit des dédicaces.
Et il me faudrait un système pour détecter un numéro de téléphone dans une dédi :
Super cool votre radio ! Appel moi au 0658585858!
Genre un signe distinctif sur le numéro 😉 (ps : j'ai une idée derrière la tête 😉) Sinon, sa ne sert à rien
Blast0Kd Le 27 juillet 2016 à 20:17 (Édité le 1 janvier 1970 à 01:00)
Apprend seul et tu y arriveras
guewen Le 27 juillet 2016 à 20:19 (Édité le 1 janvier 1970 à 01:00)
guewen Le 27 juillet 2016 à 20:41 (Édité le 1 janvier 1970 à 01:00)
guewen Le 28 juillet 2016 à 19:19 (Édité le 1 janvier 1970 à 01:00)
Bon bin j'ai essayé (sa fait presque une heure que j'y suis...)
J'aimerai vraiment avoir un peu d'aide stp...
Genre juste dit moi comment faire (sans me dire le code) mais je ne comprend pas..
Blast0Kd Le 29 juillet 2016 à 16:23 (Édité le 1 janvier 1970 à 01:00)
$mv = $_POST['ta_variable'];
$nb = ''; //ton nombre de caractère
if($mv == $nb)
et après la suite tu sais faire parce que la je t'ai tout donné guewen Le 29 juillet 2016 à 19:23 (Édité le 1 janvier 1970 à 01:00)
guewen Le 29 juillet 2016 à 19:26 (Édité le 1 janvier 1970 à 01:00)
<?php
$mv = 'Appelle moi stp ! 0558585858';
$nb = '10'; //ton nombre de caractère
if($mv == $nb)
{
echo "Ok";
}
else
{
echo "non";
}
?>
C'est bien ce que je me disais.. Que vous n'aviez pas compris.. Sa, je sais faire ce que tu m'as dis. Moi, je veux détecter le numéro dans le texte 😉 guewen Le 29 juillet 2016 à 19:28 (Édité le 1 janvier 1970 à 01:00)
TheFlameflo Le 29 juillet 2016 à 22:41 (Édité le 1 janvier 1970 à 01:00)
Si je comprend bien ce que tu veux, tu cherches à détecter un numéro ?
Donc, je crois que preg_match est parfait pour ce que tu recherches.
Je t'invite à lire la documentation et la partie du cours sur OpenClassrooms :
Le cours[url=https://openclassrooms.com/courses/concevez-votre-site-web-avec-php-et-mysql/les-expressions-regulieres-partie-2-2-2]
[/url][url=http://php.net/manual/fr/function.preg-replace.php]La doc
[/url]
Bref, j'ai voulu me pratiquer (première fois que j'utilise vraiment preg_replace) et voici ce que ça a donné :
$mv = 'Appelle moi stp ! 0558585858 autre chose 1234567890';
$mv = preg_replace('/[0-9]{10}/', "<strong>$0</strong>", $mv);
echo $mv;
Alors, en premier tu as ta chaîne de caractères avec les numéros, etc.
Après, tu as la fonction preg_replace qui utilise la REGEX suivant : /[0-9]{10}/
Si tu n'es pas familier avec ça, ça signifie : recherche un nombre de 0-9 répété 10 fois.
Le 2 ème paramète de la fonction, c'est par ce que ça va être remplacé.
J'ai décidé de l'entourer de balises "<strong>", mais tu peux le modifier comme tu veux !
Le 3ème paramètre est la chaîne de caractères où il faut trouver le pattern (premier paramètre).
Et j'imagine que tu comprends la dernière ligne !
J'espère avoir pu t'aider, si tu as d'autres questions n'hésites pas !
PS : Ça m'a permis de pratiquer !
Blast0Kd Le 30 juillet 2016 à 02:09 (Édité le 1 janvier 1970 à 01:00)
guewen Le 30 juillet 2016 à 10:35 (Édité le 1 janvier 1970 à 01:00)
Merci beaucoup TheFlameflo ! Je vais regarder le code et essayer de le refaire 😉 Tel est le but non ? 😄
J'aurais une petite question si, pourquoi mettre sa : $0 entre les variables strong ? Je ne dois pas assez connaître. Je suppose que sa veut dire : Tu m'echo à l'endroit où le numéro est rempli le résultat ?
guewen Le 30 juillet 2016 à 10:39 (Édité le 1 janvier 1970 à 01:00)