I think the distinction is "does this regex match that string" can be defined as "does this regex match that *ENTIRE* string" or "does this regex match the string over there, including taking any assertions into consideration". And both usages are equally valid use of the casual "match" word.
So, to be clear, /(a*)/ "matches" bob, but not the "entire string of bob".
-- Randal L. Schwartz, Perl hacker