私は lib-noir ライブラリを勉強しています。関数を調べてみるとwrap-strip-trailing-slash
、興味深い正規表現パターンが見つかりました。
(defn wrap-strip-trailing-slash
"If the requested url has a trailing slash, remove it."
[handler]
(fn [request]
(handler (update-in request [:uri] s/replace #"(?<=.)/$" ""))))
著者は#"(?<=.)/$"
パターンを使用していますが、正規表現がどのように機能するか理解できませんでしたか? Java Regex Document から情報を見つけようとしましたが、正しい情報が見つかりませんでした。
(?<=.)
とても面白そうです。これを理解するのを手伝ってください。