Suppose I want to move point between the following text "abc", "def",
"xyz", "thisfunction *(", "[a-zA-Z_][a-zA-Z0-9_]* *("
then I use the command "isearch-forward-regexp" (M-C-s or M-C-r) and
provide the concatenated string as input, using "|" or operator of regex:
abc\|"def\|xyz\|thisfunction *(\|[a-zA-Z_][a-zA-Z0-9_]* *(
Icicles can help in this regard. It lets you browse among occurrences that
match a regexp, and you can change the regexp dynamically (like isearch).
You can also save an often-used regexp in a variable and then reuse it later
this way. See
http://www.emacswiki.org/cgi-bin/wiki/Icicles_-_Search_Enhancements#IciclesS
earchCommands.