Windowsのパスまたはファイル名を表す文字列から不正な文字を削除しようとしています。ここでCant .netの正規表現を使用して文字列からバックスラッシュを削除します。
は私がテストのために使用されるコードは次のとおりです。
string pattern = "([\", \\, <,>, :, /, ?,|,*])";
string[] names = { "o\"ne", "t\\wo", "thr<ee", "fo>ur", "fi:ve", "si/x", "sev?en", "ei|ght", "ni*ne" };
foreach (String name in names)
{
Console.WriteLine(Regex.Replace(name, pattern, String.Empty));
}
私はこのような書き込みを「2」を除いて、全てのプリントは大丈夫取得:トンの\ WO。 括弧の外側にアスタリスクを入れてみましたが、同じ結果が得られました。
どうすればよいですか?
ありがとうございます。
あなたは 'Path.GetInvalidPathChars()'をチェックアウトしたいかもしれません – GolfWolf
正規表現のパターンとしてどのように使うのですか? – SnapDragon
これは実際には正規表現には使用されません。不正な文字を手動で置き換えて使用することができます。 – GolfWolf