The man page should be the "definitive guide" about that. I read in mine:
case word in [ [(] pattern [ | pattern ] ... ) list ;; ] ... esac
A case command first expands word, and tries to match
it against each pattern in turn, using the same match‐
ing rules as for pathname expansion. (see Pathname
This tells me it does not doe regexp's, but it does do the (simpler) pathname pattern expressions. So it does the same as for example: "ls *.txt" but also a little more complex patterns like: "ls my_*-[0-9].sh". But not the entire regular expression syntax.