gkaykck gkaykck - 3 months ago 15
Ruby Question

Ruby grep with string argument

I want to use grep with a string as regex pattern. How can i do that?

Example:

myArray.grep(/asd/i) #Works perfectly.


But i want to prepare my statement first

searchString = '/asd/i'
myArray.grep(searchString) # Fails


How can i achieve this? I need a string prepared because this is going into a search algorithm and query is going to change on every request.
Thanks.

Answer

Regular expressions support interpolation, just like strings:

var = "hello"
re = /#{var}/i
p re #=> /hello/i
Comments