Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2779 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  remplacement dans une chaine?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

remplacement dans une chaine?

n°458988
Kt-Redfox
Posté le 16-07-2003 à 01:51:58  profilanswer
 

Hello,
j'ai une chaîne de caractères du type : 0000000000
et je voudrais remplacer le 5e zéro par exemple par 1. Quelle est la fonction PHP permettant de faire çela? J'ai parcouru la doc PHP (en tapant str ou replace dans ma recherche) mais je n'ai pas trouvé la dite fonction.
Merci d'avance

mood
Publicité
Posté le 16-07-2003 à 01:51:58  profilanswer
 

n°458989
Profil sup​primé
Posté le 16-07-2003 à 02:01:44  answer
 
n°458991
Kt-Redfox
Posté le 16-07-2003 à 02:06:16  profilanswer
 


ben non :D
la première me coupe la chaine, la 2e va me remplacer tout mes 0 par 1. En alliant les 2 on y arrive bien sur mais moi je cherchais une fonction qui te le fait tout seul genre tu met:
 

Code :
  1. $string = "00000";
  2. fonction("1",5,$string);

 
où fonction() serait la fonction que je recherche, 5 le n° du caractère que je veut remplacer.
Enfin, si y'en a pas, y'en a pas :D
Merci quand même. ;)


Message édité par Kt-Redfox le 16-07-2003 à 02:06:37
n°458994
Yana
Posté le 16-07-2003 à 02:19:17  profilanswer
 

Bah je ne sais pas si il y a une fonction qui le fasse, mais autrement ca doit pas être trop dur à écrire  :sarcastic:

n°458995
Kt-Redfox
Posté le 16-07-2003 à 02:23:00  profilanswer
 

Yana a écrit :

Bah je ne sais pas si il y a une fonction qui le fasse, mais autrement ca doit pas être trop dur à écrire  :sarcastic:  


nan je sais c pas dur mais c'était juste pour savoir  :D

n°458996
Yana
Posté le 16-07-2003 à 02:34:57  profilanswer
 

Nexen ?

n°458997
Toucouch
Posté le 16-07-2003 à 02:43:36  profilanswer
 

KT-RedFOX a écrit :

Hello,
j'ai une chaîne de caractères du type : 0000000000
et je voudrais remplacer le 5e zéro par exemple par 1. Quelle est la fonction PHP permettant de faire çela? J'ai parcouru la doc PHP (en tapant str ou replace dans ma recherche) mais je n'ai pas trouvé la dite fonction.
Merci d'avance


Code :
  1. $str = '0000000000';
  2. $res1 = ereg_replace('^(....).','\11',$str);
  3. $res2 = substr($str,0,4).'1'.substr($str,5);

n°459000
Kt-Redfox
Posté le 16-07-2003 à 02:47:09  profilanswer
 

Toucouch a écrit :


Code :
  1. $str = '0000000000';
  2. $res1 = ereg_replace('^(....).','\11',$str);
  3. $res2 = substr($str,0,4).'1'.substr($str,5);




merci  :jap:  
juste une question concernant le code, a quoi sert exactement le ereg_replace ici?

n°459001
Toucouch
Posté le 16-07-2003 à 02:55:54  profilanswer
 

KT-RedFOX a écrit :


merci  :jap:  
juste une question concernant le code, a quoi sert exactement le ereg_replace ici?


Ben, je t'ai mis 2 solutions... La première ($res1) utilise une expression régulière (expression rationnelle, pour les puristes), la seconde ($res2) utilise l'opérateur de concaténation de chaînes et la fonction substr().
 
Perso, je préfère la première... Pour faciliter la réutilisation de cette première solution (remplacement du ixième caractère), tu peux aussi utiliser la regex suivante:

Code :
  1. ^(.{4}).

n°459002
Toucouch
Posté le 16-07-2003 à 02:57:23  profilanswer
 

Tu auras compris qu'il faut remplacer le 4 (5-1) par la valeur de (x-1), hein!

mood
Publicité
Posté le 16-07-2003 à 02:57:23  profilanswer
 

n°459003
Kt-Redfox
Posté le 16-07-2003 à 02:59:29  profilanswer
 

Toucouch a écrit :


Ben, je t'ai mis 2 solutions... La première ($res1) utilise une expression régulière (expression rationnelle, pour les puristes), la seconde ($res2) utilise l'opérateur de concaténation de chaînes et la fonction substr().
 
Perso, je préfère la première... Pour faciliter la réutilisation de cette première solution (remplacement du ixième caractère), tu peux aussi utiliser la regex suivante:

Code :
  1. ^(.{4}).




c nickel, merci beaucoup!  :jap:  
(Je vais me servir de ta dernière expression régulière car je donnais ici juste un exemple :D)

n°459005
Toucouch
Posté le 16-07-2003 à 03:06:20  profilanswer
 

KT-RedFOX a écrit :


c nickel, merci beaucoup!  :jap:  
(Je vais me servir de ta dernière expression régulière car je donnais ici juste un exemple :D)


De rien! Sur ce, bonne nuit! :hello:


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  remplacement dans une chaine?

 

Sujets relatifs
Concaténer nom de variable et chaine de caract. dans une requête MYSQL[batch dos] rempacler une chaine de caractere dans un fichier
[batch dos] extraction de chaine dans un fichier [resolu + solution][SQL]chaine de carctères présente dans un colonne
[c] Couper une chaine de caractere en 2 [RESOLU]prob: getimagesize() et chaîne de caractère
[C] Comment recuperer des données dans une chaine ?Split d'une chaine en fonction du nombre de caractere
[VBA] [ALGO] Découper une chaine de charactères d'après séparateur[PHP] Comment gérer une chaîne avec des guillemets ??
Plus de sujets relatifs à : remplacement dans une chaine?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR