help again

Posted by Victory on Mon 29 Apr 2002 12:30 AM — 8 posts, 24,615 views.

USA #0
string for trigger: You see tracks of *Baron Helios* leading north from here.

need it to say: gtell *Baron Helios* north

any help?
Victory
Australia Forum Administrator #1
I think there are similar questions around in the forum, but to answer quickly you need to use a regular expression because you want to match an asterisk. Something like this:


Trigger: ^You see tracks of \*(.*?)\* leading (.*?) from here\.$
Send: gtell *%1* %2
Regular expression: checked
USA #2
Thanks nick, next time i'll try to look first..
-Vic
USA #3
i tried it, but it didn't seem to work. Could a prompt before it mess it up? heres what i'm askin about, this is what i see during hunt:

< 4075hp 967m 332mv 2393Tnl > You see tracks of *Duke Lerenz* leading west from here.

would that < 4075hp 967m 332mv 2393Tnl > mess with it?
Canada #4
Yup, because in a real expression, the ^ indicates start of line... Try:

Trigger: ^(.*?)You see tracks of \*(.*?)\* leading (.*?) from here\.$
Send: gtell *%2* %3
Regular expression: checked

Now the first wildcard will be your prompt, the second is the character, and the third the direction.
USA #5
didn't work
USA #6
nevermind, found an old link about it:

Posted by Nick Gammon Australia (1856 posts) bio
Date Wed 25 Apr 2001 08:30 PM
Message Ah yes, I thought that might come up next! :)

In this case, you will need to use regular expressions, because the one thing you can't match on in regular wildcards is an asterisk.

I would match on:


Trigger: You see tracks of \*(.*)\* leading (.*)
Regular Expression: checked


The "\*" "escapes" an asterisk so it just matches an asterisk, and the "(.*)" means "any number of any character". The parentheses mean "save this as a wildcard", so you could send, for instance:


gtell %1 has gone %2



Thanks Again
-Victory
Canada #7
;boggle
Uh, ok. :)