begin process at 2012 05 29 12:14:54
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript et le navigateur

 > 

Autre

 > 

interdire mots


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

interdire mots

jeudi 15 mars 2007 à 07:40:48 | interdire mots

tonytruand

Bonjour à la communauté !
j'ai besoin de votre aide, en effet je cherche à retirer dans un texte, par exemple, tous les : le la les du en ect.
J'ai pour se faire une fonction qui split le texte, compare chaque chaîne en nombre de caractères et d'équivalence (le = le mais le de lendemain n'est pas équivalent etc...).
Or le traitement est beaucoup trop long, surtout si l'on considère que j'ai 700 pages à balayer régulièrement.
Existerait il une expression régulière qui pourrait travailler plus rapidement ? ou un autre procédé ou une idée pour un traitement plus rapide ?

merci par avance

Voici ma fonction, elle est brut de pomme, alors excusez moi, mais elle fonctionne.

<html><head>

<script>
function eclat(){
var mots = new Array('le','la','je','et','il','ils','au','les','on','ou','est','leur','leurs','en','du','des');
var ChaineDebut = document.getElementById('test3').value;
var morceau=ChaineDebut.split(" ");

for (var a=0; a<morceau.length; a++) {

document.getElementById('test').value +=" "+document.getElementById('test2').value;
document.getElementById('countMots').value =0;document.getElementById('countCaract').value =-1;
document.getElementById('test2').value = morceau[a];
var ChaineEclat = document.getElementById('test2').value;

for (var i=0; i<mots.length; i++) {

var SousChaine=mots[i];

document.getElementById('countCaract').value=SousChaine.length;
var ExpressRegul = new RegExp(SousChaine,"gi");
var trouve=ChaineEclat.search(ExpressRegul);
document.getElementById('countMots').value=ChaineEclat.length;

if((trouve != -1)&&(document.getElementById('countCaract').value==document.getElementById('countMots').value))
{document.getElementById('test2').value ="";}
                                   }        }
}
</script>
</head>

<body>

résultat<textarea id=test cols=37></textarea><br>

transit<textarea id=test2 cols=37></textarea><br>

texte départ<textarea id=test3 cols=57>l administration lent changer latentes le donc les bons</textarea><br>

<input type='button' value=eclat onClick="document.getElementById('test3').value+=' '+'.';eclat();"><br>

countMots<input type=texte id="countMots" value=""><br>

motscles<input type=texte id="countCaract" value=""><br>

</body>
</html>
 

[:D][:)]

jeudi 15 mars 2007 à 11:34:13 | Re : interdire mots

bultez

Membre Club





Bonjour,

ch'tit exemple avec expression régulière

var mots = new Array('le','la','je','et','il','ils','au','les','on','ou','est','leur','leurs','en','du','des');
var tmp;
var txt=document.getElementById('test3');
for ( var n=0;n<mots.length;n++ )
{
    tmp = new RegExp(mots[n]+' ','gi');
    txt.value=txt.value.replace(tmp,'');
}

une boucle malgré tout, mais je suis loin d'être un
    spécialiste ( de quoi que ce soit, et des expressions
    régulières en particulier )
ira-ce plus vite ? ionosai.
on doit pourvoir faire largement mieux...


Cordialement            Bul         [mon Site]     [M'écrire]           

jeudi 15 mars 2007 à 17:39:26 | Re : interdire mots

tonytruand

Bonsoir et tout d'abord merci pour l'exemple,

j'ai testé, mais comme avec d'autres essais que j'ai pu faire avec d'autres fonctions j'ai toujours le même problème de parties de mots sont retirées ????
C'est pour cela que je m'étais résolu à compter le nbre de caractère avant d'effacer le mot

en reprenant votre exemple :

<html><head>

<script>function ote(){
var mots = new Array('le','la','je','et','il','ils','les','ou','est','leur','leurs','du','des','ne','de','voir','sont','donc');
var tmp;
var txt=document.getElementById('test3');
for ( var n=0;n<mots.length;n++ )
{
    tmp = new RegExp(mots[n]+' ','gi');
    txt.value=txt.value.replace(tmp,'');
}
}</script>
</head><body>
<input type=button value="retirer" onClick="ote();"><br>

<textarea id=test3 cols=80>Une activité effective minimale (y compris les stages de la formation professionnelle rémunérée) est exigée d'au

moins un des membres du couple ou de la personne isolée .</textarea><br><br>

Une activité effective minimale (y compris les stages de la formation professionnelle rémunérée) est exigée d'au moins un des membres du

couple ou de la personne isolée.


[:D][:)]

jeudi 15 mars 2007 à 18:48:31 | Re : interdire mots

stfou

Membre Club
Bonjour,
function ote()
{
var mots = new Array('le','la','je','et','il','ils','les','ou','est','leur','leurs','du','des','ne','de','voir','sont','donc');
var text = document.getElementById('test3').value.split(" ");
var text2="";
for(i=0;i<text.length;i++)
{
for(j=0;j<mots.length;i++)
{
if(text[i].toLowerCase()!=mots[j]){text2+=text[i]}
}
}
document.getElementById('test3').value=text2;
}


Le travail n'a jamais tué personne, mais pourquoi prendre le rique ?

jeudi 15 mars 2007 à 18:51:58 | Re : interdire mots

stfou

Membre Club
en fait, il sépare les mots par des espaces, il vérifi si le mot (majuscule/minuscule confondues) est égale au un des mots "interdits", si oui il ne l'ajoute pas sinon oui.


Le travail n'a jamais tué personne, mais pourquoi prendre le rique ?

jeudi 15 mars 2007 à 19:00:48 | Re : interdire mots

tonytruand

Salut,

Ok pour le principe
(rectif sur un j++ au lieu de 2 i++  ligne : for(j=0;j<mots.length;i++)

mais en testant je me rends compte que les mots restant sont multipliés par xxxx  ?

merci


<html><head>

<script>function ote()
{
var mots = new Array('le','la','je','et','il','ils','les','ou','est','leur','leurs','du','des','ne','de','voir','sont','donc');
var text = document.getElementById('test3').value.split(" ");
var text2="";
for(i=0;i<text.length;i++){

for(j=0;j<mots.length;j++){
if(text[i].toLowerCase()!=mots[j]){text2+=text[i]}
}
}
document.getElementById('test3').value=text2;
}</script>
</head><body>
<input type=button value="retirer" onClick="ote();"><br>

<textarea id=test3 cols=80>y compris les stages de la formation professionnelle rémunérée</textarea><br><br>

<textarea id=test2 cols=80></textarea>


[:D][:)]

jeudi 15 mars 2007 à 19:21:39 | Re : interdire mots

stfou

Membre Club
Oui, oups... c'est pas mon jour
function ote()
{
var mots = new Array('le','la','je','et','il','ils','les','ou','est','leur','leurs','du','des','ne','de','voir','sont','donc');
var text = document.getElementById('test3').value.split(" ");
var text2="";
var go=true;
for(i=0;i<text.length;i++){
for(j=0;j<mots.length;j++){
if(text[i].toLowerCase()==mots[j]){go=false}
}
if(go){text2+=text[i]}
}
document.getElementById('test3').value=text2;
}


Le travail n'a jamais tué personne, mais pourquoi prendre le rique ?

jeudi 15 mars 2007 à 20:04:56 | Re : interdire mots

tonytruand

oh la !!

maintenant tout disparait ?

c'est sympas de me donner un exemple mais là tout s'efface

<html><head>
<script>
function ote()
{
var mots = new Array('le','la','je','et','il','ils','les','ou','est','leur','leurs','du','des','ne','de','voir','sont','donc');
var text = document.getElementById('test3').value.split(" ");
var text2="";
var go=true;
for(i=0;i<text.length;i++){
for(j=0;j<mots.length;j++){
if(text[i].toLowerCase()==mots[j]){go=false}
}
if(go){text2+=text[i]}
}
document.getElementById('test3').value=text2;
}</script></head>
<body>
<textarea id=test3 cols=90>le la est donc revoir</textarea>
<input type=button value="ttt" onClick="ote();">

[:D][:)]
jeudi 15 mars 2007 à 20:41:32 | Re : interdire mots

stfou

Membre Club
remplace : if(go){text2+=text[i]}
par :if(go){text2+=text[i];go=true;}



Le travail n'a jamais tué personne, mais pourquoi prendre le rique ?

jeudi 15 mars 2007 à 21:50:59 | Re : interdire mots

tonytruand

désolé; mais cela efface toujours tout, je vais y regarder de plus prêt ???

merci

[:D][:)]

1 2

Cette discussion est classée dans : mots, var, document, value, getelementbyid


Répondre à ce message

Sujets en rapport avec ce message

Problème cahce avec IE [ par goulouk ] Bonjour,je voudrais savoir comment empécher de mettre une page en cache, ou alors obliger IE à recharger la page sans la prendre dans le cache.Je vous incrementer [ par tonytruand ] bonjour;j'ai un souci d'incrémentation. Dans une function ci dessous, j'aimerai que le i se traduise par 0 puis 1 puis 2 etc.J'ai bien essayer le  for Problème Firefox & document.getElementById [ par leviz ] Bonjour,J'ai un problème avec Firefox, il ne me recupère pas les valeurs de mon formulaire et pourtant sous IE ça fonctionne très bien.        alert( envois de formulaire ajax [ par Annadrill ] bonjour,voilà, j'aimerais modifier la fonction que je vous mets la dessous, de manière a pouvoir l'utiliser avec n'importe quel formulaire, en précisa récuperer données table [ par anasjava ] Je suis débutant en java  et  j'ai  un petit souci, je remli une table par des donnée Problème de script faisant ralentir ie [ par gregusse ] Bonjour ! J'ai un problème sur un script que j'ai codé. J'ai le message de IE "un script fait ralentir internet explorer ...". Apparemment c'est à ca insertion des donne javascripte dans une bdd [ par somapi ] salue les amies j'ai un pFe qui consiste à crée une ma interactive bon, ma problème c'est que j'ai des donne dans ma base j aimerait bien récupère ces Problème calcul "IF" (conditionnel) [ par canascat008 ] Bonjour a tous, je suis un petit morpion dans le monde du codage et je bute sur une formule !! je suis en train de coder un formulaire pour calculer Vérification formulaire [ par maha1987 ] salut tout le monde, j'ai un formulaire html et css mais le controle javascript ne fonctionne pas j'ai essayé même avec le jquery mais toujours le mê Redimentionnement et Repositionnement d'un DIV [ par fabiano13 ] Bonjour, Je voudrais superposer un div d'une dimension précise sur une vidéo et lorsque je suis en mode "plein écran" ce div devrait se redimensionne


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

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,967 sec (4)

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