Supprimer les caractères entre [ ]

WRInaute passionné
Hello tout le monde!

Je cherche une expression régulière pour supprimer tous les caractères entre [] ainsi que ces derniers caractères.

Exemple:

Du texte [blabla] encore du texte

Je voudrais obtenir

Du texte encore du texte

Merci a celui qui saura m'aider
 
WRInaute passionné
zimounet a dit:
Exemple:

Du texte [blabla] encore du texte

Je voudrais obtenir

Du texte encore du texte

Code:
$chaine = 'Du texte [blabla] encore du texte';

$chaine = preg_replace('!(.+) [\[](.+)[\]] (.+)!', '$1 $3', $chaine);

echo $chaine;

edit correction erreur
 
WRInaute passionné
Code:
$chaine = 'Du texte [blabla] encore du texte';

$chaine = preg_replace('!(.+) [\[](.+)[\]] (.+)!', '$1 $3', $chaine);

echo $chaine;

Le code peut encore être amélioré si tu as par exemple 2 expressions à recherché du genre

Du texte [blabla] encore du [trop fort] texte

Le code indiqué ne fonctionnera pas complètement ; voici l'ajout à y faire

$chaine = preg_replace('!(.+) [\[](.+)[\]] (.+)!U', '$1 $3', $chaine);

Personnellement je le laisse toujours ainsi.

tu peux ajouter après le "U" un "s" afin que les retours de ligne soit gérés aussi.
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut