Aide Sur Les Regex

Signaler
Messages postés
248
Date d'inscription
vendredi 3 novembre 2006
Statut
Membre
Dernière intervention
11 février 2013
-
Messages postés
248
Date d'inscription
vendredi 3 novembre 2006
Statut
Membre
Dernière intervention
11 février 2013
-
Bonjour,
voila je teste de créer un petit Bot de jeu ou il serra interdi de dir les mots OUI et NON le seule souci c'est que si une personne écrit o u i il n'est pas éjectée du salon vue que le oui serra détacher
mes mon code ne fonctione pas il me dit :
* /if: close bracket not found (line 2, script1.ini) et je ne voi pas ou :/ merci :)

on *:text:*:#: {
  if ($me isop $chan) {
    if $regex($strip($1-),/([o]+[u]+[i]*[-_.,;]*([n]+[o]+[n]+) { 
      /kick # �2;�3;7INTERDIS �3;12de dire les mots �3;7OUI �3;12ou �3;7NON �3;12sur peine de kick XD �F;
    }

Cordialement stéphane

18 réponses

Messages postés
1804
Date d'inscription
mardi 15 juillet 2003
Statut
Membre
Dernière intervention
22 septembre 2009
4
Il manque un "/" fermant dans ta regex.
L'utilisation des regex en mIRC se fait par "$regex(le texte, /le masque/)". Et là comme tu n'as pas de "/" à la fin de ton masque, mIRC te jette.
Messages postés
2466
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
1 août 2010
1
Euh, moi je dirais plutot qu'il a bel et bien simplement un probleme de parenthese,  et que mirc n'a aucun mal a gere quoi que ce soit (c'est pas lui qui rend invalide l'expression), il ne fait qu'utiliser la lib.
Ca fonctionne aussi sans les / / dans la plupart des cas, mais il vaut mieux les utiliser, il y a des endroits ou mirc en a besoin ,sur le prefixe $ par ex, qui devrait etre utilise ici pour simplifie (ainsi que le @) :

on @$*:text:/([o]+[u]+[i])*[-_.,;]*([n]+[o]+[n]+)/S:#: kick # �2;�3;7INTERDIS �3;12de dire les mots �3;7OUI �3;12ou �3;7NON �3;12sur peine de kick XD

J'ai modifie l'expression par rapport a ce que je pensais etre le plus vrai pour ce qu'il veut faire, cad ajouter une ')' manquante.
En fait, il utilisait $regex avec une expression contenant une virgule, donc mirc aurait pris ca pour un nouveau parametre, en l'utilisant directement ds le match text avec le $, je pense que c'est bon.
Il y avait aussi deux } manquante, c'est l'erreur que mirc reporte en premier dailleurs...
Messages postés
1804
Date d'inscription
mardi 15 juillet 2003
Statut
Membre
Dernière intervention
22 septembre 2009
4
Je ne dis pas que mIRC est responsable, mais si tu mets un slash ouvrant sans slash fermant, ca ne peut pas passer si ? J'ai la flemme d'ouvrir mIRC, mais oui, de toute façon il manquait aussi des parenthèses, la regex ne semblait pas bien valide...
Messages postés
2466
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
1 août 2010
1
j'ai franchement cru que tu pensais ca vu la maniere dont c'etais dis, sans aucun commentaire sur le pourquoi son code etais faux :/

je sais pas si ca passe d'enleve un des deux / quand ils ne sont pas requis, je pense que oui .
Messages postés
248
Date d'inscription
vendredi 3 novembre 2006
Statut
Membre
Dernière intervention
11 février 2013

re merci de vos réponse
mes voila
avec se code

on @$*:text:/([o]+[u]+[i])*[-_.,;]*([n]+[o]+[n]+)/S:#: kick # $nick �2;�3;7INTERDIS �3;12de dire les mots �3;7OUI �3;12ou �3;7NON �3;12sur peine de kick XD
 sa ne marche toujours pas et j'arrive pas tros a saisir l'histoire du //
la je viens de testé le oui ne marche pas le non fonction sauf s'il et détacher brefff en gros ji arrive pas lol
sans compter que le code au dessus et pour tout les salon et moi j'aimerais le bloque just pour le salon prévu pour se jeu

cordialement stéphane
Messages postés
2466
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
1 août 2010
1
ça c'est parce que ta regex est surement fausse, peu tu précisé dans quel cas aimerais tu que ça déclenche ?
Messages postés
248
Date d'inscription
vendredi 3 novembre 2006
Statut
Membre
Dernière intervention
11 février 2013

Bonjour wims,
alors j'aimeré que si un user dit :
O.u.i
 o-u-i
Ouiiii
o u i
N.o.n
n-o-n
Nonn
�F;N_o_n
O_u_i
O,u,i, o,u,i
N,o,n n,o,n,
Nôn
Nô.n
n o n
qu'il soi ejecter du salon comme sanction mes franchement je trouve pas c'est plus facile sur unreal (spamfilter) que sur mirc loool.
je tiens a rapelé que sa serra un jeu de Ni oui Ni non
cordialement stéphane
Messages postés
1804
Date d'inscription
mardi 15 juillet 2003
Statut
Membre
Dernière intervention
22 septembre 2009
4
Pouah... mais pourquoi tout faire uniquement en regex alors que c'est pas du tout adapté ?

alias contient_oui_non {
  var %s, %x = $regsub($1-,/[^a-z]/ig,,%s)
  return $iif((oui isin %s) || (non isin %s), $true, $false)
}

Disclaimer: pas fait de mIRC depuis un bail, et non testé, donc "provided AS IS" et à adapter.
Disclaimer2: c'est à adapter pour 1/ le flood (ouiiiii), 2/ vérifier que "oui" et "non" sont bien des mots de ta phrases ("Nous maintenons notre position" ne devrait pas être détecté normalement)
Messages postés
248
Date d'inscription
vendredi 3 novembre 2006
Statut
Membre
Dernière intervention
11 février 2013

bonjour PaDa,
merci de votre aide mes je débute je suis encor dans les On text lol donc ton code m'intérésse beaucoup :) mes je ne c'est vraiment pas comment sa fonction ou modifier je supose que je doit le placé dans une nouvelle remote mes comment je fait pour le bloquer pour un salon en particulier ?

cordialement stéphane
Messages postés
248
Date d'inscription
vendredi 3 novembre 2006
Statut
Membre
Dernière intervention
11 février 2013

re
je viens de testé j'ai mis cette phrase
salut oui je suis la mes rien ne c'est passé :/  (sa na pas marcher :s)

cordialement stéphane
Messages postés
1804
Date d'inscription
mardi 15 juillet 2003
Statut
Membre
Dernière intervention
22 septembre 2009
4
Le code n'est pas complet, tu n'as qu'à te documenter un peu et chercher à comprendre ce que je t'ai donné :-)
Messages postés
248
Date d'inscription
vendredi 3 novembre 2006
Statut
Membre
Dernière intervention
11 février 2013

re PaDa
OK bien merci mes bon j'ai pas le temps de me documenté je pensé que pour créer cette remote prenais maximum  30mn mes sa fait 3 jours que je suis dessus et comme j'ai du retard en code pour mes page et server je laisse tombé merci beaucoup de votre aide et mes user ferons avec le badword. sa ferra tres bien l'affaire car j'ai vraiment pas le temps :/ d'ou je suis venue cherche un peut aide pour avancé et que je puisse mettre se bot en téléchargement.
en tout cas merci beaucoup d'avoir prie le temps de me répondre ;)

Cordialement Stéphane
Messages postés
2466
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
1 août 2010
1
/(^| )(o[-_.,; ]*u[-_.,; ]*i|n[-_.,; ]*o[-_.,; ]*n)( |$)/iS

voici l'expression qui match tout les cas que tu veux (je sais pas faire plus court).Ne l'utilise pas directement dans un regex comme je l'ai dis.
Messages postés
248
Date d'inscription
vendredi 3 novembre 2006
Statut
Membre
Dernière intervention
11 février 2013

wims bonjour,
un grand merci pour ton aide et merci pour ton code il marche quasiment a 100% lol mes il ne prend pas les accents je te montre se que j'ai pu commencé a faire depuis cette aprém au cas ou que sa peut aussi aidé d'autre personnes :)

on @$*:text:/(^| )(o[-_.,; ]*u[-_.,; ]*i|n[-_.,; ]*o[-_.,; ]*n|o[-_.,; ]*u[-_.,;êéè ]*e|o[-_.,; ]*u[-_.,; ]*a[-_.,; ]*i[-_.,; ]*s|u[-_.,;êeè ]*é)( |$)/iS:#: {
  /kick # $nick �2;�3;7INTERDIS �3;12de dire les mots �3;7OUI �3;12ou �3;7NON �3;12sur peine de kick XD �F;
}
on @$*:NOTICE:/(^| )(o[-_.,; ]*u[-_.,; ]*i|n[-_.,; ]*o[-_.,; ]*n|o[-_.,; ]*u[-_.,;êéè ]*e|o[-_.,; ]*u[-_.,; ]*a[-_.,; ]*i[-_.,; ]*s|u[-_.,;êeè ]*é)( |$)/iS:#: { 
  /kick # $nick �2;�3;7INTERDIS �3;12de dire les mots �3;7OUI �3;12ou �3;7NON �3;12sur peine de kick XD �F;
}
on @$*:action:/(^| )(o[-_.,; ]*u[-_.,; ]*i|n[-_.,; ]*o[-_.,; ]*n|o[-_.,; ]*u[-_.,;êéè ]*e|o[-_.,; ]*u[-_.,; ]*a[-_.,; ]*i[-_.,; ]*s|u[-_.,;êeè ]*é)( |$)/iS:#: {
  /kick # $nick �2;�3;7INTERDIS �3;12de dire les mots �3;7OUI �3;12ou �3;7NON �3;12sur peine de kick XD �F;
}

seule souci c'est que les accent sur les Ô Ê é è etc.... il ne les prend pas :s serré tu pk stp merci ?

Cordialement stéphane
Messages postés
2466
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
1 août 2010
1
Np, mais saches que la maniere dont tu as modifie l'expression ne va pas fonctionne ds des cas ou je pense que tu voudrais que ca soit le cas.
Sinon oui, la case des caracteres ne fonctionne pas sur les caractere non alphabetique, ca a ete reporte deja, ca viendrait du mode de compile de la lib des regex par mirc...
Messages postés
248
Date d'inscription
vendredi 3 novembre 2006
Statut
Membre
Dernière intervention
11 février 2013

re ah ok bien merci encor ;) oui effectivement quand une personne dit ouiiiiii oui viiiiiiii sa ne fonctione pas mes pas tros grave je rajoute a force malgré que je pense qu'il y a un autre code a faire mes pas grave il s'amuse tous bien c'est déja tres bien plus le bot que j'ai arrive aussi a les achevé mdr donc il son content c'est le pricipal merci beaucoup je mettre le bot en téléchargement des que possible en eggdrop ;) et en mirc vue que je n'est pas trouvé sur google :)

cordialement stephane
Messages postés
2466
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
1 août 2010
1
Si c'est du mirc, ce n'est pas un eggdrop, et si ton bot c'est juste les trois lignes que tu as utilises plus haut, ne le post pas sur ce site, parce que les bouts de code ne sont pas accepte, il faut que tu presente un bot, ou un jeu pour bot, complet et fonctionnel.
Messages postés
248
Date d'inscription
vendredi 3 novembre 2006
Statut
Membre
Dernière intervention
11 février 2013

salut,


oui c'est normal ;) mes se jeux je vais regardé de faire le code en eggdrop la on la créer simplement pour des user de mon Tchat et je vais le mettre en téléchargement sur mon site :) aprés des que je peut je vais l'amélioré et créer un code en TCL pour se qui veule.


cordialement stéphane


et encor merci de votre aide ;)