これはおそらく愚かな質問ですが、大まかな検索では私に答えが与えられていません。私は文字列中の無効な文字を探しているところに問題があります。その中に改行文字やタブ文字などがあります。ただし、見つかった場合は、コンソールに出力されます。あなたが想像する通り、改行文字を「 n」文字列に変換する
"Character
is invalid"
が一目でチームを混乱させる可能性があります。 C#では、改行文字を文字列リテラルバージョン"\n"
に変換するのに素早く簡単な方法がありますが、ではなく、は「特殊」でない無効な文字を変換しますか?ここで
using System.Text.RegularExpressions
class Foo {
Regex invalidCheck = @"[^\w_ ]";
public void ParseString(string command) {
var invalid = invalidCheck.Match(command)
if (invalid.Success)
Console.WriteLine("Invalid character " + invalid.Value)
else {
// Do things with the string...
}
}
}
、私はinvalid.Value
が実際あるかわからないが、私はに空白文字を変換するためにそれを取得する必要があります知っています何か読める。
参照:
そして、あなたの場合のために、ちょうど
escp
機能でinvalid.Value
を囲みますstring.ReplaceまたはRegex.Replace(リテラルまたは正規表現)これはかなり動作します\ n "(スラッシュをスラッシュしたり、そのままの文字列を使用することを忘れないでください)、単一の\ n - > \ n" "直感的には、印刷できない/空白 - >エスケープされます。 – user2864740コードはどのように見えますか? –
s = s.Replace( "\ r"、 "\" r \ "")。( "\ n"、 "\" \\ n \ ""); – rashfmnb