Was ist der schnellste Weg, um zu überprüfen, ob eine Zeichenfolge mit einem regulären Ausdruck in Ruby übereinstimmt?
Mein Problem ist, dass ich eine große Liste von Zeichenfolgen "egrep" durchgehen muss, um herauszufinden, welche mit einem regulären Ausdruck übereinstimmen, der zur Laufzeit angegeben wird. Es ist mir nur wichtig, ob die Zeichenfolge mit dem regulären Ausdruck übereinstimmt, nicht, wo sie übereinstimmt oder wie der Inhalt der übereinstimmenden Gruppen ist. Ich hoffe, dass diese Annahme verwendet werden kann, um die Zeit zu reduzieren, die mein Code mit passenden regulären Ausdrücken verbringt.
Ich lade den regulären Ausdruck mit
pattern = Regexp.new(ptx).freeze
Ich habe festgestellt, dass string =~ pattern
das etwas schneller ist als string.match(pattern)
.
Gibt es andere Tricks oder Verknüpfungen, mit denen dieser Test noch schneller durchgeführt werden kann?