私はC#で次のものを持っています。
string fileName = @"X:\Users\username\AppData\Local\foo.txt";
次の結果が得られるように実行したいと思いRegex.Replace
ます。
string fileName = @"X:\Users\AppData\Local\foo.txt";
X:
ドライブ文字 ( ) を動的にできる正規表現を使用すると便利です。要するに、「username
」の部分を削除するだけです。また、ユーザー名はユーザーの実際の名前のプレースホルダーにすぎないことに注意してください。つまり、ボブ、ラリー、ジョン、またはその他の名前になる可能性があります。正規表現はこれを考慮する必要があります。
ここでX:\Users\
期待できることは、常に (X: はC:
orD:
など) で始まり、その後に何らかの文字列が続き、その後に a が続き、その後にそうで\
ない他のパス要素が続くということです。重要。また、大文字と小文字を区別しないで一致させるとよいでしょうusers or Users
。
これは がなくても実行できることはわかっていますが、サポートRegex
のみを提供する大規模なシステムに適合させるためにこれが必要です。やRegex
のようなものはサポートされていません。String.Replace
String.Join