I'm not receiving Janet's messages for some reason, so I'm not sure of every detail of her requirement for this, but I am left with a question.
What is the \s? at each end doing?
I mean obviously it is looking for zero or one space characters, but why?
If you can have zero space characters, that means you can have any character there, including a space character, since the space matching is un-anchored.
In fact, it is the same as \s*, for the same reason. (Or, possibly even the same as .*)
So I think the expression should work identically with or without the "\s?", although I could understand a "\b".
What am I missing?