Anonymous user
File extension is in extensions list: Difference between revisions
→{{header|C}}
SqrtNegInf (talk | contribs) m (→{{header|Perl}}: Fix link: Perl 6 --> Raku) |
|||
Line 484:
}
</lang>
=={{header|Clojure}}==
<lang Clojure>(defn matches-extension [ext s]
(re-find (re-pattern (str "\\." ext "$"))
(clojure.string/lower-case s)))
(defn matches-extension-list [ext-list s]
(some #(matches-extension % s) ext-list))</lang>
It is assumed that when extensions are "added to the system", they will be "normalized" to the expected (lower) case.
<lang Clojure>(defn normalize-extensions [ext-list]
(map clojure.string/lower-case ext-list))</lang>
{{out}}
<pre>
(def ext-list ["zip" "rar" "7z" "gz" "archive" "A##" "tar.bz2"])
(def exts (normalize-extensions ext-list))
(map (partial matches-extension-list exts)
["MyData.a##"
"MyData.tar.Gz"
"MyData.gzip"
"MyData.7z.backup"
"MyData..."
"MyData"
"MyData_v1.0.tar.bz2"
"MyData_v1.0.bz2"])
(".a##" ".gz" nil nil nil nil ".tar.bz2" nil)
</pre>
=={{header|D}}==
|