Grouping patterns together using () is good, but memory is reserved for the variables the captured contents will be stored in every time. This can be inefficient
Clustering allows you to group patterns without the extra overhead:
/A boy named (?:Tom|Dick|Susan)/
It gets better: Inside clusters, you can set local modifiers that supercede the modifiers given to the whole pattern:
/movie.*(?-i:eXistenZ)/i # The capitalization of the movie is important