Допустим, у меня есть произвольная строка, такая как
`A man + a plan * a canal : Panama!`
и я хочу выполнить поиск по регулярному выражению для строк, которые не отличаются от регистра. То есть это регулярное выражение должно соответствовать строке
`a man + A PLAN * a canal : PaNaMa!`
Я полагаю, что лучший подход - экранировать символом-косой чертой каждый символ со специальным значением в регулярных выражениях Ruby, а затем сделать Regexp.new
с этой строкой и Regexp::IGNORECASE
в качестве аргументов. Это правильно? Существует ли проверенное регулярное выражение для преобразования произвольных строк в литерал регулярных выражений?
Кстати, я в конечном итоге хочу использовать это регулярное выражение для выполнения произвольного нечувствительного к регистру запроса MongoDB. Так что, если есть другой способ сделать это, пожалуйста, дайте мне знать.