in reply to Question on Grep Function

You're not using that right. From perlre:

A word boundary \b is a spot between two characters that has a \w on one side of it and a \W on the other side of it (in either order), counting the imaginary characters off the beginning and end of the string as matching a \W.
'a' is a word character and '.' is not, so therefore both strings match.