C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#の正規表現で使えるエスケープ文字の一覧まとめ

C# の正規表現では、タブや改行などの特殊な文字を表現するために、さまざまなエスケープ文字(エスケープ シーケンス)が用意されています。ここでは、C# で利用できる主なエスケープ文字を、意味と使用例(パターン)とともに一覧形式で紹介します。

C# のエスケープ文字一覧

エスケープ文字説明パターン例
\aベル文字(\u0007)に一致します。\a
\b文字クラス内でバックスペース(\u0008)に一致します。[\b]{3}
\tタブ(\u0009)に一致します。(\w+)\t
\rキャリッジリターン(\u000D)に一致します。※ \r は改行文字 \n とは異なる点に注意してください。\r\n(\w+)
\v垂直タブ(\u000B)に一致します。[\v]{2}
\fフォームフィード(\u000C)に一致します。[\f]{2}
\n改行(\u000A)に一致します。\r\n(\w+)
\eエスケープ文字(\u001B)に一致します。\e
\nnn8進数表現で文字を指定します(nnn は最大3桁の数字)。\w\040\w
\x nn16進数表現で文字を指定します(nn は必ず2桁)。\w\x20\w
\cX / \cxX または x で指定された ASCII 制御文字に一致します(X または x は制御文字を表す英字)。\cC
\unnnn16進数表現で Unicode 文字に一致します(nnnn は必ず4桁)。\w\u0020\w
\直後の文字がエスケープ文字として認識されない場合、その文字そのものに一致します。\d+[\+-x\*]\d+

補足:逐語的文字列リテラル(@"...")の活用

C# の通常の文字列リテラルでは、バックスラッシュ(\)自体がエスケープ記号として扱われるため、正規表現パターンを記述する際に「\\」のように二重のエスケープが必要になることがあります。

これを避けたい場合は、先頭に @ を付けた逐語的文字列リテラル(verbatim string literal)を使用すると便利です。

// 通常の文字列リテラル
string pattern1 = "\\d+\\s\\w+";

// 逐語的文字列リテラル(読みやすく、エスケープ不要)
string pattern2 = @"\d+\s\w+";

正規表現を頻繁に扱うコードでは、逐語的文字列リテラルを使うことで可読性が大きく向上し、エスケープミスによるバグも防げます。

  1. JavaScriptのエスケープ文字とは?特殊文字のエスケープ方法と一覧を解説

    エスケープ文字とは?エスケープ文字とは、プログラム上で本来意図した意味とは別の特別な意味に解釈されてしまう文字のことです。たとえば、ダブルクォートやシングルクォート、改行コードなどが該当します。こうした文字を「そのままの文字」として扱い、画面に出力したい場合には、直前にバックスラッシュ「\」を付けて記述します。この操作を「エスケープ処理」と呼びます。JavaScriptの主なエスケープ文字一覧コード意味・出力結果\bバックスペース\fフォームフィード\n改行(ニューライン)\rキャリッジリターン\t水平タブ\v垂直タブ\シングルクォート()\ダブルクォート()\\バックスラッシュ(\)バックス

  2. App Storeがダウンしているか確認する方法|障害状況チェックガイド

    App Storeは、iOSやmacOSエコシステムの中心となる存在です。話題の新作ゲーム、生産性向上ツール、カメラアプリなど、iPhone・iPad・Macにインストールしたいあらゆるコンテンツへの入り口です。だからこそ、接続できなくなると大きな問題に感じられるでしょう。 動作が遅い、読み込みに時間がかかる、ログインできないといったトラブルが起きている場合、原因はAppleのサーバー側にある可能性があります。この記事では、AppleのApp Storeが正常に稼働しているかどうかを素早く確認する方法をご紹介します。関連記事として、「iPhoneやiPadがApp Storeに接続できないとき