Page 1 sur 1

Supprimer entre crochets

Posté : 20 août 2011, 15:44
par Elie
Bonjour,

Je voudrais supprimer les balises entre crochets d'un texte :

Code : Tout sélectionner

[strong]Le Texte[/strong]
J'utilise ce code :
preg_replace("#\[.*\]#", '', $txt))
Mais du coup il me vire tout cas il prend le premier [ et le dernier ] Comment faire ?

Re: Supprimer entre crochets

Posté : 20 août 2011, 22:50
par sirakawa
si j'ai bien vu, il faut faire un masque
dans une situation analogue où
texte est un texte du genre le texte (est) à (voir)
delimiteur est un nombre identifiant le signe qui encadre les mots à traiter
/** 
	\brief array of string ouvrants: délimiteurs ouvrants pour l'expression régulière*/
	$ouvrants = array("\(", "=", "-", "\*", "{", "\[", "\(\*");
	
	/** array of string ouvrants_simples: délimiteurs ouvrants */	
	$ouvrants_simples = array("(", "=", "-", "*", "{", "[", "(*");
	
	/** string delimiteur_ouvrant :le délimiteur ouvrant codé */
	$delimiteur_ouvrant = $ouvrants [$delimiteur];
	
	/** array of string fermants: délimiteurs fermants pour l'expression régulière*/	
	$fermants = array("\)", "=", "-", "\*", "}", "\]", "\*\)");
	
	/** array of string fermants_simples: délimiteurs fermants */	
	$fermants_simples = array(")", "=", "-", "*", "}", "]", "*)");	
	
	/** string delimiteur_fermant: le délimiteur fermant codé */	
	$delimiteur_fermant = $fermants [$delimiteur];
	
	/** array of string $a_supprimer: tableau des délimiteurs simples à éliminer */
	$a_supprimer = array( $ouvrants_simples[$delimiteur], $fermants_simples[$delimiteur]);
	
	/** array of string $suppresseurs : remplaçants des délimiteurs */
	$suppresseurs = array("","");
	
	/** string masque de recherche des mots à masquer */
	$masque = '/'.	$delimiteur_ouvrant.'[a-zA-Z0-9 âaâàéèêëîïôöùûüãÃÀÂÂÉÈÊËÎÏÔÖÙÛÜ]+'.
	$delimiteur_fermant.'/';
	$texte_clair = str_replace ($a_supprimer, $suppresseurs, $texte_origine);


si ça ne fonctionne pas c'est que je me suis trompé en copiant....

Re: Supprimer entre crochets

Posté : 22 août 2011, 11:19
par popy
/\[.*?\]/