Besoin d'aide pour expression régulière

Fermé
nikizim Messages postés 67 Date d'inscription jeudi 16 octobre 2008 Statut Membre Dernière intervention 10 avril 2009 - 6 mars 2009 à 08:45
darkchristophetd Messages postés 1100 Date d'inscription mardi 26 février 2008 Statut Contributeur Dernière intervention 14 novembre 2010 - 10 mars 2009 à 22:18
Bonjour,

Voila je cherche à remplacer certains mots d'une phrase. j'ai commencé à faire une regex en javascript mais elle ne fonctionne pas très bien. La voila :

var reg = new RegExp('\b(le|un)\b', 'ig');

Exemple :

--> la phrase suivante est un exemple.

je voudrais la transformée en :

--> phrase suivante est exemple.

Le problème, c'est que si j'enlève les \b, ça va m'afficher cela :

--> phrase suivante est exemp.

Et si met les \b, ça ne marche pas du tout.

Si je ne me trompe pas, les \b sont là pour dire que c'est un mot que recherche. non ?

Pouvez-vous m'aider ?

Merci beaucoup d'avance.
A voir également:

11 réponses

darkchristophetd Messages postés 1100 Date d'inscription mardi 26 février 2008 Statut Contributeur Dernière intervention 14 novembre 2010 459
6 mars 2009 à 08:51
Hum une question, pourquoi ne fait-tu pas ça en PHP ?
Ça serait infiniment plus simple...
0
nikizim Messages postés 67 Date d'inscription jeudi 16 octobre 2008 Statut Membre Dernière intervention 10 avril 2009 11
6 mars 2009 à 08:54
C'est lors de la validation d'un formulaire, que je fais en JS. Mais pourtant une regex en JS ou en PHP c'est la même technologie ? Non ?
0
darkchristophetd Messages postés 1100 Date d'inscription mardi 26 février 2008 Statut Contributeur Dernière intervention 14 novembre 2010 459
6 mars 2009 à 09:54
Oui mais il y a une fonction PHP bcp plus simple : str_replace
Exemple :

<?php
$chaine = "J'aime les pommes"; //déclaration de la chaine
$chaine = str_replace('pommes', 'poires', $chaine); //on remplace "pommes" par "poires" dans la chaine "$chaine"
echo $chaine; //affiche "J'aime les poires"
?>
0
nikizim Messages postés 67 Date d'inscription jeudi 16 octobre 2008 Statut Membre Dernière intervention 10 avril 2009 11
6 mars 2009 à 10:00
Je pense qui s'il n'y a personne qui connait la solution en JS, je vais être obligé d'utiliser une partie de ta solution.

Ce qui m'ennuies, c'est que je vais être obligé de récupérer la valeur dans le JS, l'envoyer dans le php, récupérer la valeur php, pour la retraiter en JS et l'afficher.

Alors qui si le JS le faire directement, ça m'éviterais tout cela ;)

Merci pour cette première solution.

Y a t-il la même solution mais en JS ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nikizim Messages postés 67 Date d'inscription jeudi 16 octobre 2008 Statut Membre Dernière intervention 10 avril 2009 11
6 mars 2009 à 11:39
Bon je continu des fois que ça peut aider quelqu'un pour mon problème ;)

J'ai donc essayé la solution darkchristophetd en faisant communique JS avec PHP. J'ai exactement le même problème que j'ai mis dans mon premier post.

C'est-à-dire que, dès que le met les \b avant et après ma regex elle ne fonctionne plus et si je ne les mets plus, ça marche même dans les mots qui on les caractères que je demande.

J'extrais la valeur d'un champs texte qui est un éditeur type Tinymce. Est ce que le problème viendrais de la ?
0
nikizim Messages postés 67 Date d'inscription jeudi 16 octobre 2008 Statut Membre Dernière intervention 10 avril 2009 11
6 mars 2009 à 20:21
il y a personne qui n'a de solution ?
0
nikizim Messages postés 67 Date d'inscription jeudi 16 octobre 2008 Statut Membre Dernière intervention 10 avril 2009 11
7 mars 2009 à 12:26
MMMM comment dire ???

Je patauge toujours :)

personne ne peut m'aider ?
0
nikizim Messages postés 67 Date d'inscription jeudi 16 octobre 2008 Statut Membre Dernière intervention 10 avril 2009 11
8 mars 2009 à 12:25
Un bon vieux Up sauvage Pour dire que je ne vois vraiment pas
0
darkchristophetd Messages postés 1100 Date d'inscription mardi 26 février 2008 Statut Contributeur Dernière intervention 14 novembre 2010 459
9 mars 2009 à 21:37
envoie ton code
0
nikizim Messages postés 67 Date d'inscription jeudi 16 octobre 2008 Statut Membre Dernière intervention 10 avril 2009 11
10 mars 2009 à 11:08
Mon code ressemble à ceci :

la fonction :
function supWords(text, words) {
	var reg = new RegExp('\b(' + words + ')\b', 'ig');
	var textWordsSupp = text.replace(reg, '');
	alert(textWordsSupp);
}

Qui est dans un fichier externe qui est importé dans l'entête de mon document.

Le code de test qui se trouve dans le document :
tinyMCE.triggerSave(true, true);
supWords(document.adminForm.texte.value, 'le, la');

Ce code est activé lors de la pression sur le bouton validé

le code HTML :
<textarea id="texte" class="mceEditor" style="display: none;" rows="5" cols="60" name="texte"/>

J'ai simplifier se code au Max car c'est un code généré en JS puisqu'il utilise JCE editor via Tinymce. Je n'est donc mis que le champ texte.
0
darkchristophetd Messages postés 1100 Date d'inscription mardi 26 février 2008 Statut Contributeur Dernière intervention 14 novembre 2010 459
10 mars 2009 à 22:18
oula moi le JS j'y connais rien dsl
0