0

特定のファイル パターンに一致するソース ファイルがあり、ファイル パターンの特定の要素を新しく作成された宛先ファイルで再利用したいとします。
だから例のために。正規表現で指定されたファイルパターンは

src_pattern = "(\d\d)_(\d\d)_(\d\d\d\d)_FOO.xml";

after searching a directory, found a matching source file looking like 

src = 08_21_2013_foo.xml

now the new file must be of the form 

dst = $3$1$2_BAR.xml;  

ソースからプルされたキャプチャ グループ (20130821_BAR.xml のようになります)。これを効率的に達成するにはどうすればよいでしょうか。かなり柔軟にする必要があり、これらのそれぞれがどのように見えるかについてはわかりません。それらはどこかから引っ張られています。そのため、キャプチャ グループの番号付け、つまり 3 番目、1 番目、2 番目の番号を取得するのに問題があると思います。たとえば、それを見つけたとしましょう。ソース ファイルを参照するにはどうすればよいでしょうか。数値を表す整数(kなど)が必要で、次のように参照する必要がありますか

match = Regex.Match(src, src_pattern)
match.Groups[k].Value

これらの番号を引くのは面倒なようです...

また、各 dst が指定するこれらのキャプチャ グループの数がわからないので、これらすべてを自動化する方法を教えてください。これには別の方法やスマートなネイティブ機能がありますか

4

3 に答える 3