【バッチ】特定の文字に挟まれた文字の抽出方法が分からない

実現したいこと

欲しいデータを抜き出したいです。

set result=(ゴミデータ1)aaaaa(欲しいデータ)iiiii(ゴミデータ2)

前提

  • 最終的に人に渡したいファイルなので相手の環境によってはpowershellが使えない可能性があり、powershellを使った解決を避けたい
  • 一時的に外部ファイルを作成するような形でもOK
  • ゴミデータは一意の値ではない(毎回ランダムの認識でOK)
    • ただし、aaaaaとiiiiiはこの文字列内に必ず1回しか出現しない
  • iiiiiはaaaaaにも変更した状態で上記変数(result)は作成できる

試したこと

以下で「(欲しいデータ)iiiii(ゴミデータ2)」の抜き出しはできましたが、
同じ手口で後半も抜き出そうとしたところ文字列が変化しませんでした。

set result2=%result:*aaaaa=% echo %result2%

バッチにおいてはうまく正規表現ができない場合もあるらしいことが調べて分かりました。

その後ChatGPTに質問して、powershell以外の回答も得ましたが、
どれもこれもエラーが出てうまくできませんでした。

どなたかご教授お願いいたします。

コメントを投稿

0 コメント