Каков самый быстрый способ проверить, соответствует ли строка регулярному выражению в Ruby?
Моя проблема в том, что я должен "egrep" через огромный список строк, чтобы найти те, которые соответствуют регулярному выражению, которое дается во время выполнения. Мне только заботится о том, соответствует ли строка регулярному выражению, а не по его совпадению, и какому содержимому соответствует группа.. Я надеюсь, что это предположение может быть использовано для сокращения времени, затрачиваемого моим кодом регэкспы.
Я загружаю regexp с помощью
pattern = Regexp.new(ptx).freeze
Я обнаружил, что string =~ pattern
немного быстрее, чем string.match(pattern)
.
Существуют ли другие трюки или ярлыки, которые могут использоваться для ускорения этого теста?