In einem Modell gibt es ein FeldThe Ruby% r {} Ausdruck
validates :image_file_name, :format => { :with => %r{\.(gif|jpg|jpeg|png)$}i
Es ist für mich ziemlich seltsam aussieht. Ich bin mir bewusst, dass dies ein regelmäßiger Ausdruck ist. Aber ich möchte:
- um zu wissen, was genau es bedeutet. Ist
%r{value}
gleich/value/
? - in der Lage sein, es durch normalen Ruby-Regex-Operator
/some regex/
oder~=
zu ersetzen. Ist es möglich?
Sogar 're =% r/home/user' funktioniert (mit Leerzeichen als Trennzeichen). – jdoe
Der Downvote war nur 1 Stunde vor. Was Platz als Trennzeichen betrifft, ist das großartig, aber nicht die Art von Dingen, die ich empfehlen werde, um deinen Code zu lesen, ohne sechs Monate später verwirrt zu sein :) – Eureka
Wenn du Leerzeichen als Trennzeichen verwendest, wird dein regulärer Ausdruck bei dir brechen fügen Sie später Leerzeichen hinzu. Ich denke, die Idee ist, Trennzeichen zu verwenden, die nichts in Ihrem regulären Ausdruck entsprechen, mit geschweiften Klammern als bevorzugter Standard. –