[RESOLU] Supprimer des caractères d'une chaine de balise.

Eléphant du PHP | 213 Messages

13 avr. 2022, 12:13

Bonjour,
Grace à toutes vos aides j'arrive à la fin de mon projet.
Il a été validé par mon futur employeur.
Maintenant je dois supprimer des données dans une chaine.

Code : Tout sélectionner

[ADC_START][SDP]1[GUICHET]2[DEM]3[USER_CMDB_DIF_NON]45[DEM_PDT PCF < ASSET_XXX> < TPX_1>]6789[RDV_NON]10[RSDP_NON]
je dois supprimer tous les chiffres qui se trouvent entre deux crochets.

Code : Tout sélectionner

]1[ ]2[ ]3[ ]45[ ]6789[ ]10[
Je ne peux les remplacer, car ce sont des marqueurs de page.
Merci.
De retour au PHP pour essayer de préserver mon emploi à 59 ans.

ynx
Mammouth du PHP | 586 Messages

13 avr. 2022, 13:02

Bonjour,

Une solution possible avec une expression régulière et la fonction preg_replace (si je me trompe pas) ;
$chaineAvecChiffres = '[ADC_START][SDP]1[GUICHET]2[DEM]3[USER_CMDB_DIF_NON]45[DEM_PDT PCF < ASSET_XXX> < TPX_1>]6789[RDV_NON]10[RSDP_NON]';
$chaineSansChiffres = preg_replace('/\]\d+\[/', '][', $chaineAvecChiffres);

echo $chaineSansChiffres; // [ADC_START][SDP][GUICHET][DEM][USER_CMDB_DIF_NON][DEM_PDT PCF < ASSET_XXX> < TPX_1>][RDV_NON][RSDP_NON]

Eléphant du PHP | 213 Messages

13 avr. 2022, 13:22

Bonjour ynx,

Merci beaucoup.
Quel savoir tu as.
Je peux donner tout mon projet pour le site.
Merci.
De retour au PHP pour essayer de préserver mon emploi à 59 ans.