Called a look-ahead expression, we can use this to match multiple expressions: Syntax: (?=match this expression)(?=match this too)(?=oh, and this) Example - match string containing the words 'ruby' and 'rails' (regardless of order of occurence): "ruby rails".match(/(?=.*ruby)(?=.*rails)/)