Expression régulière pour Bbcode

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Expression régulière pour Bbcode

par julian » 31 mars 2009, 09:49

Dans ta regexp, tu n'as pas besoin d'échapper l'antislash du retour à la ligne car \n est un caractère spécial. Je suis pas sûr que ça règle le problème mais essaie quand même :
"/(<h1>|<h2>)(<br/>|\n)*([a-zA-Z<\.)*/"

par bucheron » 30 mars 2009, 11:44

ça n'inspire personne ?

Expression régulière pour Bbcode

par bucheron » 26 mars 2009, 14:16

Hello,

sur un projet que je réalise, j'autorise les membres à pouvoir éditer des fiches via du bbcode.
je souhaiterais réaliser un filtre au niveau des retours à la ligne dont voici les caractéristiques.

après avoir appliquer mon filtre bbcode je souhaite supprimer les <br/> qui se trouvent après les balises title qui elles sont gérées via le css.

Exemple
Code initiale

Code : Tout sélectionner

test [h1] Titre[/h1] suite texte [h2]Titre 2[/h2] suite ....
code avant d'appliquer ma fonction

Code : Tout sélectionner

test <h1> Titre</h1> suite texte <h2>Titre 2</h2> suite ....
et après le passage du texte dans ma fonction

Code : Tout sélectionner

test <br/> <h1>Titre</h1> suite texte<br/> <h2>Titre 2</h2> suite <br/> .... ....
j'ai essayé quelque chose mais vu que je ne suis pas un expert en regexp je demande votre aide:
function convertBR($text) {
	$res = str_replace("\n", "<br/>", $text);
	$res = preg_replace("/(<h1>|<h2>)(<br/>|\\n)*([a-zA-Z<\.)*/", "\\1\n\\3", $res);
	 return $res;
}
d'avance merci