パスマッピングで接頭辞を書き換えつつWindows形式のパスに変換する方法

やりたいことは、Linuxのファイルシステムをクロールした結果を、Windowsの共有フォルダとしてユーザーに使って貰えるようにすることです。

Windowsで利用しているNAS共有フォルダ\\nasserver\sharenameがあります。
これをWSL2でmountしました。

sudo mount -t cifs -o vers=3.0, iocharset=utf8 "\\nasserver\sharename" /mnt/nas/sharename

その後、compose.yamlservices.fess01.volumesを追記し、コンテナ内で利用できるようにしました。

    volumes:
        - /mnt/nas/sharename:/nas/sharename:ro

そして、docker compose -f compose.yaml -f compose-opensearch2.yaml up -dで起動。

ファイルシステムとして、file:/nas/sharenameに対して検索クローラが動くことで、
インデックスが実際に行われ、FESS検索画面から検索結果が確認できるようになりました。

これをパスマッピングしたいです。

検索結果は次のように、URI形式になっていますが、

file://nas/sharename/~/path/to/result.extension

このようにWindows形式のパスにしたいです。

\\nasserver\sharename\~\path\to\result.extension

試しに、下記のような正規表現を入れてみましたが、やはりJavaの正規表現としては正しくないので、動作しないようです。

Regular Expression Replacement
^file:/nas/sharename/(.*)$ \\\\nasserver\\sharename\\${1/\//\\}

2段階にする方法も考えましたが、対象以外も置換してしまいそうで断念しました。

Regular Expression Replacement
^file:/nas/sharename/ \\\\nasserver\\sharename\\
/ \\

直接SMBプロトコルでアクセスする以外にスマートな方法はございませんでしょうか?

Windows10からファイルエクスプローラーのアドレスバーはバックスラッシュでもスラッシュでも関係なく正常に動作するので、接頭辞だけ置き換えたら目的が達成できるかもしれません。

compose.yamlを変更せずmountなどしなくても、Windowsの共有フォルダをクロールするの方法でそのままNASにつながることがわかり、本トピックは不要となりました。