For starters, why the regexp???
It would be much more efficient to use LIKE if you don't really need the regexp.
But if you do use the regexp, what's wrong with simply
col1 REGEXP '[[:<:]]buildings?[[:>:]]'
The ? after the s makes that character optional.
If you needed to make a group optional and with alternatives:
col1 REGEXP '[[:<:]]compan(y|ies)?[[:>:]]'
which would match
[Okay, no such thing as "compan", but I couldn't thing of a better example.]