Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Question sur les expressions régulières et les caractères spéciaux.

7 réponses
Avatar
James
Bonjour,

A l'aide de la fonction txt.replace et les expressions régulières, je
cherche à remplacer chaque occurence de "[g]" (avec les crochets) par "<b>"
et de "[/g]" par "</b>". J'ai déjà essayé plusieurs méthodes mais ça ne
fonctionne toujours pas ! Pouvez-vous m'aider svp.

Merci d'avance.

Cordialement,

James.

7 réponses

Avatar
kurtz le pirate
In article <463f90bf$0$23706$,
"James" wrote:

Bonjour,

A l'aide de la fonction txt.replace et les expressions régulières, je
cherche à remplacer chaque occurence de "[g]" (avec les crochets) par "<b>"
et de "[/g]" par "</b>". J'ai déjà essayé plusieurs méthodes mais ça ne
fonctionne toujours pas ! Pouvez-vous m'aider svp.


tu devrais nous faire voir ce que tu as essayé non ?

je ne sais pas si javascript interprète les regexpr de manière
"normale", mais un truc de ce genre devrait fonctionner :

s/[(/?)g]/<$1b>/g;



--
klp

Avatar
ASM
Bonjour,

A l'aide de la fonction txt.replace et les expressions régulières, je
cherche à remplacer chaque occurence de "[g]" (avec les crochets) par "<b>"
et de "[/g]" par "</b>". J'ai déjà essayé plusieurs méthodes mais ça ne
fonctionne toujours pas ! Pouvez-vous m'aider svp.


text.replace(/[g]/g,'<b>');

il faut échapper les [ ]


Chez moi ceci fonctionne :

<form onsubmit="var txt = this.texte.value;
txt = txt.replace(/[g]/g,'<b>').replace(/[/g]/g,'</b>');
this.texte.value = txt;
return false;">
texte : <input name=texte><input type=submit value=convertir>
</form>

Ou en condensé comme indiqué par kurtz :

<form
onsubmit="var txt = this.texte.value;
txt = txt.replace(/[(/?)g]/g,'<$1b>');
this.texte.value = txt;
return false;">
texte : <input name=texte><input type=submit value=convertir>
</form>


--
Stephane Moriaux et son (moins) vieux Mac déjà dépassé

Avatar
James
"kurtz le pirate" a écrit dans le message de news:

In article <463f90bf$0$23706$,
"James" wrote:

Bonjour,

A l'aide de la fonction txt.replace et les expressions régulières, je
cherche à remplacer chaque occurence de "[g]" (avec les crochets) par
"<b>"
et de "[/g]" par "</b>". J'ai déjà essayé plusieurs méthodes mais ça ne
fonctionne toujours pas ! Pouvez-vous m'aider svp.


tu devrais nous faire voir ce que tu as essayé non ?

je ne sais pas si javascript interprète les regexpr de manière
"normale", mais un truc de ce genre devrait fonctionner :

s/[(/?)g]/<$1b>/g;



--
klp


Merci pour l'aide.

J'avais essayé ceci :

var regGrasDebut=new RegExp("[g]","gi");
var regGrasFin=new RegExp("[/g]","gi");

txt=txt.replace(regGrasDebut,"<b>");
txt=txt.replace(regGrasFin,"<b>");

Comme ça ne marche pas, j'ai aussi essayé des expressions du genre : var
regGrasDebut=new RegExp("["{1}+"g"{1}+"]"{1},"gi"); mais sans succès.

Cordialement,

James.


Avatar
kurtz le pirate
In article <46403d08$0$27388$,
ASM wrote:

il faut échapper les [ ]


normalement seuls les caractères | ( ) [ { ^ $ * + ? et . doivent
êtres protégés... mais ça ne coûte rien de le faire pour les autres
comme ici pour le ']'


--
klp

Avatar
ASM
In article <46403d08$0$27388$,
ASM wrote:

il faut échapper les [ ]


normalement seuls les caractères | ( ) [ { ^ $ * + ? et . doivent
êtres protégés...


Heu ... je suis pas très sûr, vu qu'on peut avoir [a-z]
et que donc '[' et ']' signifieraient qque chose

mais ça ne coûte rien de le faire pour les autres
comme ici pour le ']'


Le test me montre qu'avec les [] non échappés ça ne fonctionnera pas


--
Stephane Moriaux et son (moins) vieux Mac déjà dépassé


Avatar
ASM

mais ça ne coûte rien de le faire pour les autres comme ici pour le ']'


Le test me montre qu'avec les [] non échappés ça ne fonctionnera pas


Arrggghhhh !
faut que je ré-aprenne à lire !

en effet,
il suffit de n'échapper que le '['
(ce qui parait logique)



--
Stephane Moriaux et son (moins) vieux Mac déjà dépassé


Avatar
kurtz le pirate
In article <464059ff$0$27408$,
ASM wrote:


mais ça ne coûte rien de le faire pour les autres comme ici pour le ']'


Le test me montre qu'avec les [] non échappés ça ne fonctionnera pas


Arrggghhhh !
faut que je ré-aprenne à lire !

en effet,
il suffit de n'échapper que le '['
(ce qui parait logique)


warffff :))


--
klp