SX Options: Pattern Matching

New as of V3.0, VBLM allows you to use wildcard characters and do pattern matching with the tokens on all 5 SX lists (properties, function args, sub args, strings, and identifiers). For example, if you enter "*Setting?" on the function list and check Use Pattern Matching, VBLM will not extract any string arguments to VB4's DeleteSetting(), GetAllSettings(), GetSetting(), or SaveSetting() functions.

With the exception of case-sensitivity and empty square brackets ([]), the pattern matching process is identical to that performed by VB's Like operator, wildcards and all. To refresh your memory:

Pattern Char(s)

Matches

?

Any single char

*

Zero or more chars

#

Any single digit (0-9)

[charlist]

Any single char in charlist

[!charlist]

Any single char not in charlist

By default, the pattern matching process is not case-sensitive: "Foo" matches "FOO", "foo", etc. However, a leading "+" activates case-sensitive matching on a pattern-by-pattern basis. Thus "+Foo" matches "Foo" but not "FOO", "foo", etc.

Empty square brackets are an alias for the space character (this alias is necessary because VBLM's parsing algorithm for pseudo-listboxes treats spaces as token delimiters).

When you use pattern matching, be alert to the fact that VBLM may exclude strings that should in fact be translated. For example, if you put "SELECT*" on the string pattern list to exclude SQL queries, VBLM isn't going to extract the form caption "Select any item on the list below" either. To find out exactly which strings pattern matching is excluding, load the Extraction Log into a text editor and search for the wildcards.