Clojure関数内で複数の正規表現を結合する最適な方法は何ですか? 関数は次のように始まると思います:
(defn foo [x]
(re-seq #"some means to combine multiple regex")
しかし、これが機能するかどうか、またはそのような機能の効率性は明確ではありません。可能な正規表現結合の例を提供するために、ドメイン名と IP の両方を検索する関数を考えることができます。ドメイン名については、次のように正規表現を使用します。
(re-seq #"\b([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,6}\b" x)
IP の場合:
(re-seq #"\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b")