Page 1 sur 1

Supprimer une chaîne de caractères entre deux délimiteurs

Posté : 19 mai 2010, 23:50
par Supprimer une chaîne de caractères comprise entre deux délimiteurs
Bonjour,

Je souhaiterai reformater une feuille de style avec Php, avec une mise en page basique, c'est-à-dire en supprimant les sauts de ligne.

Jusque là, je débute, mais j'y arrive. :mrgreen:

En revanche, j'aimerai, au cours du formatage, supprimer les commentaires sous la forme /* Commentaire */.

Exemple...

Code : Tout sélectionner

/* Formulaires */ form, fieldset { margin: 0; padding: 0; border: none; }
deviendrait...

Code : Tout sélectionner

form, fieldset { margin: 0; padding: 0; border: none; }
(Pour la compréhension, je n'intègre pas à l'exemple la suppression de sauts de ligne.)

Naturellement, les commentaires commencent toujours pas /* et finissent par */.

J'ai essayé d'utilisé str_replace, strstr, strpos, substr, substr_replace, sans résultats...

Dois-je forcément recourir à une expression régulière ?

Merci pour vos lumières.

Cordialement,

Gaspard

Re: Supprimer une chaîne de caractères entre deux délimiteurs

Posté : 20 mai 2010, 00:12
par stealth35
avec une expression relation et preg_replace :wink:

Re: Supprimer une chaîne de caractères entre deux délimiteurs

Posté : 20 mai 2010, 00:54
par Castor Gaspard
Bonsoir,

Bon, je cherche dans cette direction, même si pour l'heure, je n'ai pas rencontré le succès espéré après plusieurs essais. :cry:

Ah oui, pour la bonne tenue du forum, je tenais à présenter mes excuses : un copier-coller incongru m'a conduit à coller le sujet dans le nom d'utilisateur. Je suis confus. :oops:

Cordialement,

Gaspard

Re: Supprimer une chaîne de caractères entre deux délimiteurs

Posté : 20 mai 2010, 02:31
par AB
Ce petit tuto permet de faire ses premiers pas assez facilement avec les expressions régulières.

En le suivant tu pourrais trouver la réponse à ta question, qui pourrait donner quelque chose ressemblant à ça :
$css = "/* Formulaires */
form, fieldset {
  margin: 0;
  padding: 0;
  border: none;
};

/*Annulation d'autres formatages automatiques */
body, p, textarea, input, hr, ul, li, h1, h2, h3, h4, option, checkbox, select {
  margin: 0;
  padding: 0;
};";

echo nl2br(preg_replace('#(/\*.*\*/)#','',$css));

Re: Supprimer une chaîne de caractères entre deux délimiteurs

Posté : 20 mai 2010, 07:13
par Castor Gaspard
Bonjour,

Merci Stealth, merci Ab. Gr$ce à vous, mon problème est résolu. :)

Cordialement,

Gaspard

Re: Supprimer une chaîne de caractères entre deux délimiteurs

Posté : 20 mai 2010, 15:36
par zeus
Modération :
Puisque ta question est résolue, je l'indique en ajoutant la petite icône verte "Résolu" pour que les futures personnes qui voudront consulter ce sujet sachent qu'il contient une solution.

TTu peux réaliser cette opération toi-même en cliquant sur le bouton Image en haut à droite de la réponse qui te semble la plus pertinente, si tu as posté le 1er message en tant que membre (inscrit et identifié).

Alors... inscris-toi !!! ;)