Square brackets in regex - ranges or sets

A range is specified in the form of [a-z] - this will match any one of lowercase letter from a to z.
We could do it numerically - [0-9].
Sets are specified in the form like this: [abz954] - this particular set will match any one of a, b, z, 9, 5 or 4

Example - get a text which contains words 'cat' or 'cut' we could use a regex which looks like this:

$ egrep -r 'c[au]t' /etc/nanorc
Output:
## Use cut-from-cursor-to-end-of-line by default.
# set cutfromcursor
# set indicator
## double click), and execute shortcuts.  The mouse will work in the
## Don't display the helpful shortcut lists at the bottom of the screen.
## (The old form of this option, 'set tempfile', is deprecated.)
## of a single character, and without affecting the cutbuffer).
#bind ^X cut main
#bind ^P location main
#bind ^T cutrestoffile execute
#bind ^L linter execute
#bind ^E execute main