Once a trigger has matched you can extract any of the wildcards for that trigger using this function.
The wildcards can be specified by name or number (if by number pass a string which is the appropriate number).
You can set up a named wildcard like this:
Match: (?P<who>.*) tells you '(?P<what>.*)'
In this case we have 2 wildcards, named "who" and "what".
Now we can extract wildcards like this:
x = GetTriggerWildcard ("mytrigger", "who") ' get wildcard named 'who'
x = GetTriggerWildcard ("mytrigger", "what") ' get wildcard named 'what'
x = GetTriggerWildcard ("mytrigger", "22") ' get wildcard 22 (if it exists)
You can have up to 999 wildcards, plus wildcard 0 which represents the entire matching string.
You can use GetTriggerInfo selector 31 to find how many wildcards matched.
Each wildcard will have a number and may optionally have a name.
Note: Available in version 3.48 onwards.
VBscript example
dim x
x = GetTriggerWildcard ("mytrigger", "who") ' get wildcard named 'who'
x = GetTriggerWildcard ("mytrigger", "what") ' get wildcard named 'what'
x = GetTriggerWildcard ("mytrigger", "22") ' get wildcard 22 (if it exists)
Lua example
local x
x = GetTriggerWildcard ("mytrigger", "who") -- get wildcard named 'who'
x = GetTriggerWildcard ("mytrigger", "what") -- get wildcard named 'what'
x = GetTriggerWildcard ("mytrigger", "22") -- get wildcard 22 (if it exists)
Lua notes
Inside an trigger script function you can access named wildcards by
simply putting the name after the wildcards argument. eg.
function myTriggerFunction (name, line, wildcards)
Note (wildcards.who) --> access named wildcards "who"
end
Returns
The contents of the specified trigger wildcard, as described above.
An EMPTY variant, if the trigger does not exist.
A NULL variant if the trigger name is invalid.
An empty string if the wildcard does not exist. An empty string is the string "", this is different from an EMPTY variant.