Whilst I'm always aghast when coming accross a space in a file name, I strongly believe we should allow for both dash and underscore (with a slight preference for the former).
I can't imagine a situation were 'grep -w' will really be an issue, that could not be avoided by a more suitable regular expression. We should not restrict ourselves too much in our choice of extension names due to (possibly historic) border cases of pattern matching. If it would be a real issue something would be broken now since our extension names are currently using both of them.
I believe to posses a fairly good grasp of regular expressions and their subtle differences when used in conjunction with the likes of grep, sed, vi, perl, ... I've avoided the use of 'grep -w' since those regular expressions might not be easily re-used with another tool.
I also had a quick look accross /usr/sbin, /usr/bin, and /etc/init.d and found only these two uses of 'grep -w':
/usr/bin/tce-load:81: if [ -e "$FROMWHERE"/copy2fs.flg ] || grep -qw $APPNAME "$FROMWHERE"/copy2fs.lst 2>/dev/null; then
/etc/init.d/rc.shutdown:32: if grep -w "$APP" "$LIST" >/dev/null 2>&1; then sed -i '/'"$APP"'/d' "$LIST"; fi
I can't right now see a reason to use 'grep -w' in either case, but I'm sure that there must be a good reason. Nevertheless I'm confident that the same effect can be achieved by some other way. I consider finding properly matching regular expressions an enjoyable brain teaser (maybe like some other folks solve crossword puzzle) and like to humbly offer my skills to find an alternative.
As I minor improvement I'd like to suggest to enclose the pattern in line 81 of tce-load in double-quotes. It's just a habit of mine due to have been bitten on this one a few times when I was less experienced.