Once a alias has matched you can extract any of the wildcards for that alias 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: Tell (?P<who>.*?) (?P<what>.*)
In this case we have 2 wildcards, named "who" and "what".
Now we can extract wildcards like this:
x = GetAliasWildcard ("myalias", "who") ' get wildcard named 'who'
x = GetAliasWildcard ("myalias", "what") ' get wildcard named 'what'
x = GetAliasWildcard ("myalias", "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 GetAliasInfo selector 24 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 = GetAliasWildcard ("myalias", "who") ' get wildcard named 'who'
x = GetAliasWildcard ("myalias", "what") ' get wildcard named 'what'
x = GetAliasWildcard ("myalias", "22") ' get wildcard 22 (if it exists)
Lua example
local x
x = GetAliasWildcard ("myalias", "who") -- get wildcard named 'who'
x = GetAliasWildcard ("myalias", "what") -- get wildcard named 'what'
x = GetAliasWildcard ("myalias", "22") -- get wildcard 22 (if it exists)
Lua notes
Inside an alias script function you can access named wildcards by simply putting the name after the wildcards argument. eg.
function myAliasFunction (name, line, wildcards)
Note (wildcards.who) --> access named wildcards "who"
end
Returns
The contents of the specified alias wildcard, as described above.
An EMPTY variant, if the alias does not exist.
A NULL variant if the alias 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.