in reply to Y.A.R.M.

It has to do with \W matching _ but not *.

After all, \b will have a non-letter on the left (the space) so the next char (*|_) has to be a letter, or the \b assertion won't match.

—John