Unless you want some funny behaviour, I would recommend you use \w
instead of .
.
matches whitespace and other non-word symbols, which you might not want it to do.
So I would replace ?
with \w
and replace *
with \w*
Also if you want *
to match at least one character, replace it with \w+
instead. This would mean that ben*
would match bend
and bending
but not ben
– it’s up to you, just depends what your requirements are.