2007年01月04日
文字列からファイル名として使用できない文字を消す方法
Windowsでファイルとして使用できない文字があります。
このような文字です。
[¥] [/] [:] [*] [?] ["] [<] [>] [|]
※[]で囲んでます。
文字列から該当文字を削除したい場合、
以下のようにすれば文字列から削除する事ができました。
using System.Text.RegularExpressions;
string sOut = Regex.Replace(sIn, "[/:*?¥"<>|]", "");
sOut = sOut.Replace(@"¥","");
それで、結果は以下の通りとなります。
sIn sOut
test¥01 → test01
te/:st¥02 → test02
t"e|*s<>t?03" → test03
(¥を表示上の問題で全角にしていますが、本来は半角です)