Actually, from what I gathered from your post, it probably would be better to keep them in a list, and do a lsearch on it. lsearch can be performed either: exact, glob or regexp. You probably want glob or regexp.
If {[lsearch -glob $accepted_commands ${mystring}*] >= 0} {
# this command was good
}
Hope that helps,
--brett