ref: 55949ed458f9014e42c404a832332a66bb999d51
dir: /test/boundaries.myr/
use "testmatch.use"
const main = {
/* expected matches */
testmatch("\\<([a-z]*)\\>", "abcdef") /* whole word */
testmatch(".*(\\<.*\\>).*", "!m!") /* single char word in midstring */
testmatch(".*(\\<.*\\>).*", "!m") /* single char word at end of string */
testmatch(".*(\\<.*\\>).*", "m!") /* single char word at start of string */
testmatch(".*(\\<.*\\>).*", "!@#!!matches!!%!") /* word in midstring */
testmatch(".*(\\<.*\\>).*", "matches!!%!") /* word at start of string */
testmatch(".*(\\<.*\\>).*", "!@#!!matches") /* word at end of string */
testmatch(".*(\\<.*\\>).*", "!@#!!matches!!%!foo") /* matches last word in string */
testmatch(".*(\\<.*\\>).*", "123") /* numbers are also word bounds */
/* nonmatches */
testmatch("\\<([a-z]*)\\>foo", "abcdefoo") /* word boundary needed in midstring */
}