C# 文字列内の非 ASCII 文字を効率的に削除する
データ処理では文字列のクリーニングが必要になることが多く、非 ASCII 文字を削除することは、特に従来のシステムとの互換性のために一般的なタスクです。 C# は、正規表現を使用した簡単なソリューションを提供します。
正規表現によるアプローチ
非 ASCII 文字を削除する最も効率的な方法は、Regex.Replace
メソッドを使用することです。 その方法は次のとおりです:
<code class="language-csharp">string inputString = "søme string with non-ASCII characters."; string cleanString = Regex.Replace(inputString, @"[^\u0000-\u007F]+", "");</code>
正規表現を理解する
正規表現 [^u0000-u007F]
を詳しく見てみましょう:
[^...]
: これは否定された文字クラスです。これは、「括弧内にないの文字と一致する」ことを意味します。u0000-u007F
: ASCII 文字の Unicode 範囲 (10 進数 0 ~ 127) を指定します。したがって、式全体は ASCII 範囲外の 1 つ以上の (
) 文字と一致します。
メソッドの説明
Regex.Replace
メソッドは、inputString
内で非 ASCII 文字のシーケンスを体系的に検索し、それらを空の文字列 (""
) に置き換えて、効果的に削除します。 結果の cleanString
には ASCII 文字のみが含まれます。
以上がC# で文字列から非 ASCII 文字を削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。