C#の書式指定文字列における「\」エスケープ文字の使い方
C#の数値を文字列に変換する際、書式指定文字列の中にある「#」「0」「.」「,」「%」「‰(パーミル)」といった記号は、すべて書式指定子として解釈されます。
これらの記号を書式指定子ではなく、そのままリテラル文字として出力したい場合は、直前にエスケープ文字であるバックスラッシュ(\)を付ける必要があります。
また、「#」「0」「\」自体をエスケープ文字として扱いたくない場合も、同様にバックスラッシュでエスケープします。特に「\」を出力したいときは「\\」と記述する点に注意しましょう。
サンプルコード
以下の例では、「##」という文字をそのまま表示するために、それぞれの「#」の前にエスケープ文字(バックスラッシュ)を付けています。
using System;
using System.Globalization;
class Demo {
static void Main() {
int num = 20;
Console.WriteLine(num.ToString("\\#\\# ##0 Rank"));
}
}実行結果
## 20 Rank
このように、書式指定子として解釈されたくない記号の前にバックスラッシュを置くことで、意図した通りの文字列を出力できます。カスタム数値書式を使う場面では頻繁に登場するテクニックなので、覚えておくと便利です。
-
【初心者向け】JavaScriptのescape()関数とは?使い方と非推奨の理由を解説
JavaScriptのescape()関数とはJavaScriptのescape()関数は、文字列をエンコードするために使用される関数です。文字列内の特殊文字をASCII形式のエスケープシーケンス(%xx の形式)に変換します。ただし、この関数はECMAScript v3以降で非推奨(deprecated)とされており、現在の開発では使用が推奨されていません。URIのエンコード目的であれば、代わりにencodeURI()やencodeURIComponent()を使用することが標準的な方法です。escape()の使用例それでは、実際にJavaScriptのescape()関数を使用したサンプル
-
C言語の文字操作を徹底解説!宣言方法と入出力関数の使い方
Cプログラミング言語において、文字(character)は英大文字(A〜Z)、英小文字(a〜z)、数字(0〜9)、空白(ホワイトスペース)、または特殊記号のいずれかとして扱われます。文字の宣言方法C言語で文字型変数を宣言する際は、char 型を使用します。文字定数はシングルクォーテーション( )で囲んで指定します。char a = A; /* 文字定数を使用した宣言 */このように宣言することで、変数 a に1文字分のデータを格納できます。文字入出力関数の種類C言語には、文字を入出力するための関数がいくつか用意されています。代表的なものは以下の3組です。scanf / printf: 書式指定