multiple search with grep

is it possible to execute multiple search with grep???

grep criteria1 criteria2 file

something like this...

I know other way:

grep pattern1 file-name1 > results-file
grep pattern2 file-name1 >> results-file
cat results-file

but can it be done with one grep????

grep -E "criteria1|criteria2" file

thanks I will try

Or there is:

grep -e "pattern1" -e "pattern2" file

You can try grep -f too....u can generalise that way, for multiple patterns

egrep "pattern1|pattern2|.....|patternn" filename