Jeemate geolocalisation str_replace

Bonjour les connaisseurs !
Heureux utilisateur de Jeemate (bravo les développeurs) je suis en train de faire scenar utilisant la geoloc, et plus précisément les « (G) xxx » (permettant de voir si le user est in ou out d’une zone)… mais n’arrive pas à en extraire le nom ( ici je voudrais récupérer le mot « maison » de mon trigger() qui a cette valeur [Boom !! ][Tel Isa][(G) Maison])
J’aurais voulu votre avis sur la question :slight_smile:
J’ai tenté de mettre

str_replace(']' , '', str_replace('[Boom !! ][Tel Isa][(G) ' , '', '[Boom !! ][Tel Isa][(G) Maison]')) ==1

mais cela ne fonctionne pas je crois/pense à cause des parenthèses de ‹ (G) maison ›.
J’ai bien essayé -mais peut être m’y suis-je mal pris ?- en utilisant différentes regexp, en ajoutant des \ de protection, en changeant les simples en double quotes… bref je suis perdu et voudrais autant que possible éviter de créer des virtuels pour bypasser ma difficulté présente sachant que ce forum regorge de codeurs plus futés que moi (besoin d’encore plus des fleurs :wink: ???)
Bref je suis partant pour toute idée !
Au plaisir de vous lire !
H

En déclencheur les zones à surveiller.

En bloc code :

//nom de la commande déclencheuse
$t_cmde=cmd::cmdToHumanReadable($scenario->getRealTrigger()); 
//extraction des noms utiles
$objet=strtok($t_cmde,"#[]");
$equipmt=strtok("#[]");
$cmde=strtok("#[]");
$cmde=str_replace("(G) ","",$cmde);

$tags = $scenario->getTags();
$tags['#objet#'] = $objet;
$tags['#equipmt#'] = $equipmt;
$tags['#cmde#'] = $cmde;
$scenario->setTags($tags);

1 « J'aime »

Bingo @sagitaz ! merci pour ce code qui fonctionne à merveille !
Moi qui n’avais jamais osé jouer avec ce type ‹ code ›, tu m’as convaincu de m’y mettre.
Merci encore et bonne journée à toi !

Ma notification est donc de ce type

XXX vient str_replace('0' , 'de quitter ', strval(str_replace('1' , 'd\'arriver à ', strval(triggerValue()))))   tag(cmde)

H

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.