begin process at 2012 05 29 01:52:20
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Général

 > 

expression régulière


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

expression régulière

jeudi 22 octobre 2009 à 16:08:56 | expression régulière

pcmanprogrammeur

Bonjour,

Ma question est simple, le résultat beaucoup moins ;)
Comment faire pour supprimer les caractères de ponctuation entre des balises ? Petit exemple :
ma question? <balise:coco> je suis d'accord !
Je souhaite donc supprimer le : entre le < et le > pou obtenir :
ma question? <balisecoco> je suis d'accord !
Je suppose que l'on peut faire ça avec preg_replace mais comment ???
Merci de votre aide.
jeudi 22 octobre 2009 à 20:36:10 | Re : expression régulière

neigedhiver

Salut,

La question est : quels sont les caractèrs que tu souhaites supprimer ? (je veux dire de manière précise et exhaustive, sachant que la réponse "les caratères de ponctuation" n'est pas assez précise à mon sens et encore moins exhaustive)
La question pourrait se reformuler, le cas échéant : quels sont les caractères que tu souhaites conserver ? (idem, de manière précise et concise, mais là, la réponse "les caractères alphanumériques" est satisfaisante)

Dans le premier cas, je ne peux pas (encore) te proposer de solution. Dans le second cas, en admettant que tu ne souhaites conserver que les lettres et les chiffres (y compris les caractères accentués) :
$str = preg_replace('`[^\w]`', '', $source);

Chaque fois qu'on a besoin d'une regex, il est primordial de déterminer très précisément ce que l'on souhaite. Dans ton cas, les caractères à conserver ou ceux à éliminer, et ce de manière la plus précise possible, puisque suivant les cas on utilisera plutôt tel ou tel masque, tel classe de caractères, tel ou tel option, etc.

Il est aussi extrêmement important de savoir sur quelle chaîne de caractères on travaille : est-ce que ce n'est que la balise, ou bien y a-t-il autre chose autour ? Si oui, quels caractères peut-on rencontrer et en quelle quantité ?
Dans ton cas, la balise est-elle située en début, milieu ou fin de chaîne ?

Bref, sans toutes ces précisions, impossible de te donner une vraie réponse qui tienne la route.

--
Neige

Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
jeudi 22 octobre 2009 à 21:03:41 | Re : expression régulière

syndrael

D'accord avec Neige. L'idée de prendre une expression régulière c'est tout à fait louable mais à condition de bien définir ce que tu appelles ponctuation et compagnie..
S.
vendredi 23 octobre 2009 à 04:38:38 | Re : expression régulière

Arto_8000

Pour ton cas particulier, ceci fera le travail, mais si ton utilisation dépasse simplement l'exemple que tu mentionnes ce n'est plus applicable, mais le principe restera le même.

Code PHP :
echo preg_replace('/\<([^:]*)[:]*([^:]*)\>/','<$1$2>', '<base:test>');
vendredi 23 octobre 2009 à 04:45:09 | Re : expression régulière

neigedhiver

Si l'idée est juste de supprimer le caractère : , alors on peut faire plus simple :

Code PHP :
echo preg_replace('`:`','', '<base:test>');


--
Neige

Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
vendredi 23 octobre 2009 à 11:58:39 | Re : expression régulière

pcmanprogrammeur

Arto, j'ai essayé ton expression, elle ne marche pas :(
Neige, c'est plus compliqué que ça, il faut préciser que ceux sont les : entre les < et > que je veux supprimer :p
Je pense que Arto se rapproche mais le texte afficher est vide :(
vendredi 23 octobre 2009 à 12:01:24 | Re : expression régulière

pcmanprogrammeur

oups !! ça marche Arto, en fait, fallait que je mette :
echo "<xmp>".preg_replace('/\<([^:]*)[:]*([^:]*)\>/','<$1$2>', '<base:test>')."</xmp>";
pour voir le résultat à l'écran :)
Gros merci ;)


Cette discussion est classée dans : supprimer, question, expression, régulière, accord


Répondre à ce message

Sujets en rapport avec ce message

Expression régulière pour retrouver tous les tags php [ par ninatomb ] Je recherche une expression régulière qui me retrouve tous les tags php dans une page html, sans modifier l'htmlEt une qui fonctionne !!!!!Celle ci ne expression régulière regex [ par fyav ] j'ai une variable ex: $mavar="coucoule monde%topsalut cherie%%topcomment ça va";et je souhaites enlever tout ce qui est entre "%top" et "%%top"sachant expression régulière : doublement [ par cbyvd ] Bonjour à tous, J'essaie de créer une expression régulière qui fasse : - le doublement des @ sauf si cela commence par t et suivi d’une lettre Exemple expression régulière [ par mfaraday ] SalutUne fois de plus, je me prends la tête avec une expression régulière !Alors voila je voudrais remplacer dans un texte tout ce qui est de la forme problème expression régulière [ par tony4758 ] Bonjour, j'ai un gros problème avec mon expression régulière permettant d'extraire les liens d'une page. En fait, dès qu'il y a que un lien a extraire Recherche d'une expression régulière [ par Mindiell ] Bonjour,Je cherche actuellement à remplacer certains mots dans un texte en utilisant les expressions régulières.Par exemple :toto est le plus beau,mai C# Console expression régulière [ par Abdi075 ] J'utilise cette pattern pour ne saisir que des lettres, &, @, et -.et les autres caractères sont exclus les chiffres aussi.string pattern = @"\s*([\p{ Expression régulière de la mort [ par Tartuffe ] Salut tous ! Voilà, j'ai un formulaire d'inscription avec Log et Pass à saisir. Je ne veux pas de Log ni Pass avec des ', des " ou de $ et autre \ ou Expression régulière [ par redsungraphics ] Je voudrais remplacer un mot par un lien. J'utilise actuellement str_replace. y-aurait-il une alternative qui fasse que s'il reconnait une racine d'un Expression régulière [ par mickaelpfr ] Bonjour a tous :)J'ai quelque souçis avec une expression régulière , je cherche a récupèrer le contenu des lignes d'un tableau dont la classe est défi


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,702 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales