Detection de mots

[Résolu]
Signaler
Messages postés
2107
Date d'inscription
mercredi 21 août 2002
Statut
Contributeur
Dernière intervention
19 février 2021
-
Messages postés
2107
Date d'inscription
mercredi 21 août 2002
Statut
Contributeur
Dernière intervention
19 février 2021
-
Bonjour;

J'aimerais simplifier mon code sur le detection des mots qui sont dit sur un salon

mon code se presente de cette maniere :

on *:TEXT:*sex*:#:{ ..... }
on *:TEXT:*pd*:#:{ .... }

j'aimerais mettre tous les mots dans un fichier INI mais comment avoir des wilcard avec ca ?

Aider moi

[PaTaTe]

13 réponses

Messages postés
1804
Date d'inscription
mardi 15 juillet 2003
Statut
Membre
Dernière intervention
22 septembre 2009
5
Oubah ! Merci Coolman, j'connaissais pas du tout... j'pensais pas que
mIRC implémentait des trucs non PCRE, j'avais jamais cherché.. t'as su
ca ou ? j'veux bien si t'as des urls, même en pmsg :-)



PaTaTe voila comment je ferais :



on *:TEXT:*:#:{

var %i 1,%imax = $ini(moderation.ini,mots,0)

var %phrase = $strip($1-)

while (%i <= %imax) {

var %mask = $+(*,$ini(moderation.ini,mots,%i),*)

if (%mask iswm %phrase) { $readini(moderation.ini,mots,$ini(moderation.ini,mots,%i)) | halt }

inc %i

}

}


Mets tes mots dans une sections [mots], de moderation.ini, a la racine de ton mirc.

Pas sur que ton truc soit bien évalué, avec les $nick etc.. dans ce cas entoure le $readini() d'un $eval(...,2)



Je n'ai volontairement pas fait ca de facon optimisée, mais de sorte
que tu puisses comprendre un peu a tête reposée.. j'ai pas test, mais
ca doit marcher

Bonne nuit


PaDa
Messages postés
1804
Date d'inscription
mardi 15 juillet 2003
Statut
Membre
Dernière intervention
22 septembre 2009
5
Meilleur système les regex

Syntaxe la plus simple :



on *:TEXT:*:#:{

if $regex($1-,pd|sex|mot3|mot4) { ... }

}



PaDa
Messages postés
2107
Date d'inscription
mercredi 21 août 2002
Statut
Contributeur
Dernière intervention
19 février 2021
2
c'est pas ca ke je cherche ....

[PaTaTe]
Messages postés
1804
Date d'inscription
mardi 15 juillet 2003
Statut
Membre
Dernière intervention
22 septembre 2009
5
Mouais, j'te donne juste la meilleure méthode :)

T'en fais ce que tu veux, je suppose que tu n'as pas testé :p

Sinon, raconte comment tu veux organiser ton .ini, même si c'est pas une bonne idée à mon sens, après on verra comment faire :)

PaDa
Messages postés
969
Date d'inscription
lundi 16 juin 2003
Statut
Membre
Dernière intervention
1 juillet 2012
1
pada, tu peux directement faire:



on $*:text:/(pd|sex|mot3|mot4|...)/Si:#: COMMANDE



J'sais pas si ce que tu veux faite PaTaTe c'est plus pratique avec les .ini...
Messages postés
2107
Date d'inscription
mercredi 21 août 2002
Statut
Contributeur
Dernière intervention
19 février 2021
2
ben je veux mettre mes mot dans un INI genre :

[mots]
sex=/msg $chan surveille ton language
pd=/kick $nick Pas de ce genre de language ici
......

le tout est apres de lire l'INI et de regarder si le mot se trouve dans les phrases tapéé.

J'avais vu un code similaire pour la gestion de commandes (genre !tel, !moi etc ...) mais comme je l'ai pas retrouvé et que je débute aussi....

Parce ke dans le cas du code que j'ai vu, c'etait l'expression exacte qui etait gérée, la il faut que le code cherche dans la phrase en fonction de l'INI

Merci de m'aider

PS : La rapidité importe peu pour ce code

[PaTaTe]
Messages postés
1804
Date d'inscription
mardi 15 juillet 2003
Statut
Membre
Dernière intervention
22 septembre 2009
5
yep je sais Coolman, mais c'est pas compatible vec les vieilles versions et j'lis moins bien cette syntaxe perso

le modificateur "S" sert a quoi ? jamais vu

PaDa
Messages postés
1804
Date d'inscription
mardi 15 juillet 2003
Statut
Membre
Dernière intervention
22 septembre 2009
5
A mon avis ca va être difficile Patate, on peut te
donner une solution, mais faut boucler soit sur les mots soit sur les
items de ton .ini, rajouter le coté wildcard, ca sent le truc chiant :-)

Si tu débutes vraiment, fais plus simple pour commencer !

PaDa
Messages postés
2107
Date d'inscription
mercredi 21 août 2002
Statut
Contributeur
Dernière intervention
19 février 2021
2
Ben j'ai deja fais plus sumple mais je veux simplifier le script en gérant les mots par INI (moins de maintenance au niveau du code quoi)

Aidez moi s'il vous plait !

[PaTaTe]
Messages postés
1804
Date d'inscription
mardi 15 juillet 2003
Statut
Membre
Dernière intervention
22 septembre 2009
5
Je dois partir, soirée.. Je te ferai un truc en rentrant si personne ne t'a aider, a+

PaDa
Messages postés
969
Date d'inscription
lundi 16 juin 2003
Statut
Membre
Dernière intervention
1 juillet 2012
1
le "S" (de /Si) c'est pour $strip ce qui est dit
Messages postés
2107
Date d'inscription
mercredi 21 août 2002
Statut
Contributeur
Dernière intervention
19 février 2021
2
ok PaDa

[PaTaTe]
Messages postés
2107
Date d'inscription
mercredi 21 août 2002
Statut
Contributeur
Dernière intervention
19 février 2021
2
Merci PaDa ca emble fonctionner (a part pour les commandes mais bon)

[PaTaTe]