C# テキストの "" を """ に置き換えます
C# では、バックスラッシュはエスケープ文字を表します。バックスラッシュが出現すると、後続の文字の意味が変更されます。これにより、文字列や特殊文字を扱うときに混乱が生じる可能性があります。
背景
「ab」に似た文字列があり、バックスラッシュを 1 つだけ使用する形式でそれを保存する必要があるとします。ただし、.Replace("a\b", "a\b")
を使用するだけでは望ましい結果は得られません。これは、デバッガーでエスケープされた二重バックスラッシュ表記で示されているように、現在の状態の文字列にはバックスラッシュが 1 つしか含まれていないためです。
解決策: デバッグ出力を確認します
二重バックスラッシュの存在を確認するには、問題のある文字列をコンソールに出力するか、メッセージ ボックスに表示します。バックスラッシュのみが表示される場合は、デバッガーが適切に表示するためにバックスラッシュをエスケープしていることを確認してください。
実際の二重バックスラッシュを置き換えます
実際に 2 つのバックスラッシュを含む文字列が見つかった場合は、それらを 1 つのバックスラッシュ text = text.Replace(@"\", @"\");
に置き換えるのは非常に簡単です。
エスケープ シーケンスを使用すると、C# コンパイラが置換パターンを正しく解釈できるようになります。
サーバー接続文字列に関する追加の注意事項
データベース接続文字列のコンテキストでは、バックスラッシュを含むサーバー名の誤った解析が問題の原因である可能性があります。テキスト ファイルでの検索エラーを避けるために、単一のバックスラッシュを使用し、接続文字列が適切な形式であることを確認してください。
以上がC# 文字列で 1 つのバックスラッシュを 2 つのバックスラッシュに置き換える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。