文字列のエスケープ・解除

文字列を使う先の形式を選ぶと、その規則に従ってエスケープ(書き換え)または解除(読み戻し)されます。各形式は従う仕様を名前で示します。貼り付けた内容がブラウザの外に出ることはありません。

無料 ブラウザで動作 2026年11月10日火曜日確認済み

エスケープするテキスト、または解除するエスケープ済みのテキストです。空白と改行はそのまま残ります。

操作

テキストを使う文字列の種類です。形式ごとに固有のエスケープがあります。

エスケープするときは、結果を形式の引用符で囲みます。解除するときは、テキスト全体を囲む引用符を常に取り除きます。

結果

結果
エスケープした文字

このツールはブラウザ内で動作します。入力した内容が当社に送信されることはありません。

使い方

  1. テキストに文を貼り付け、操作でエスケープか解除を選びます。
  2. 形式で文字列の種類を選びます。例えば JSON の文字列 や SQL の文字列リテラル です。
  3. 引用符で囲む形式では、引用符を付けるにチェックを入れると引用符付きのテキストが得られ、チェックを外すと内容だけが得られます。
  4. 結果を読みます。テキストをエスケープした場合は、エスケープした文字の表も読みます。

エスケープとは

プログラム、ファイル、問い合わせの中の文字列は、一部の文字しか直接持てません。エスケープは、それ以外の文字と、文字列を終わらせてしまう文字を、形式が同じ文字として読み戻す並びに置き換えます。形式ごとに並びが決まっているため、1つの文字を複数の書き方で表すこともあり、解除はその並びを文字に読み戻します。

  • JSON と JavaScript はバックスラッシュを使うため、改行は \n と書かれます。
  • HTML と XML はアンパサンドと名前とセミコロンを使うため、アンパサンドは & と書かれます。
  • CSV と SQL は、フィールドや文字列を終わらせる文字を重ねて書くため、SQL の単一引用符は2つの単一引用符と書かれます。

形式ごとの規則

  • JSON の文字列:RFC 8259の7節。引用符、バックスラッシュ、制御文字をエスケープし、4桁の16進数の \u エスケープを読みます。
  • JavaScript の文字列:ECMA-262の文字列リテラル。二重引用符で囲んだ文字列では、二重引用符だけをエスケープする必要があり、古い8進数のエスケープは拒否されます。
  • HTML の属性値:5つの文字 & < > " ' を参照として書きます。このページが知らない名前(&eacute; など)は、そのまま残ります。
  • XML のテキスト:同じ5つの文字で、アポストロフィは &apos; と書きます。XML 1.0では制御文字を書く方法がないため、そのような文字は拒否されます。
  • CSV のフィールド:RFC 4180。コンマ、引用符、改行を含むフィールドは二重引用符で囲まれ、その中の引用符はそれぞれ2つ重ねられます。
  • SQL の文字列リテラル:PostgreSQL のマニュアル。単一引用符は2つ重ねられます。標準の SQL では、バックスラッシュは特別な意味を持ちません。
  • 正規表現:ECMA-262が挙げる構文文字の前にバックスラッシュを付けます。解除では、クラスを表す \d などのエスケープはそのまま残します。
  • C# または Java の文字列:両方の言語が読むエスケープです。改行は \n、そのほかの制御文字は \u のエスケープで書きます。
  • シェルの単一引用符の文字列:POSIX。単一引用符の中では何も特別ではないため、引用符は '\'' と書きます(引用符を閉じ、それをエスケープし、また開く)。

間違えやすい点

  • テキストを2回エスケープすると、バックスラッシュが2倍になるため、最初のエスケープで \n になったものが \\n と表示されます。
  • JSON の文字列を JavaScript のファイルの中に置く場合、ファイルの中で独自のエスケープが必要です。アプリケーションの中の SQL の文字列では、その言語のエスケープも必要になる場合があります。
  • これらのどの形式でも、絵文字の半分は書けないため、ページは拒否します。その文字をもう一度入力してください。

例:引用符、改行、バックスラッシュを含む JSON の文字列

テキスト「彼は "hi" と言い、& で去った。」、改行、そして「パス: C:\temp」には、引用符が2つ、改行が1つ、バックスラッシュが1つあります。JSON の文字列として引用符で囲むと、"彼は \"hi\" と言い、& で去った。\nパス: C:\\temp" になります。表は、別の書き方になった文字の回数を数えています。

文字 書き方 回数
" \" 2
U+000A \n 1
\ \\ 1

よくある質問

テキストはサーバーに送られますか?

いいえ。エスケープと解除はお使いのブラウザの中で行われるため、パスワードやトークンを含むテキストは、お使いの機器の外に出ません。

JSON の解除で \x41が拒否されるのはなぜですか?

JSON には \x のエスケープがありません。JSON では \u と4桁の16進数を使うため、文字 A は \u0041と書きます。JavaScript の文字列は \x41を受け付けるため、2つの形式は別々に挙げています。

JavaScript の文字列で、単一引用符はエスケープされないのはなぜですか?

二重引用符で囲んだ文字列では、二重引用符だけをエスケープする必要があります。引用符を付けるオプションを有効にすると、結果は二重引用符で囲まれるため、単一引用符はそこでは普通の文字です。

SQL でバックスラッシュがエスケープされないのはなぜですか?

標準の SQL では、文字列定数の中でバックスラッシュは特別な意味を持ちません。MySQL のように既定で特別扱いするデータベースもあるため、SQL の文字列にバックスラッシュを書く前に、お使いのデータベースの規則を確かめてください。

「引用符を付ける」は何を変えますか?

オンにすると、エスケープされたテキストは、JSON の二重引用符や SQL の単一引用符など、形式の引用符で囲まれます。オフにすると内容だけが得られるため、すでに引用符で囲まれた文字列の中に入れる場合などに使えます。

テキストに引用符がないのに、CSV の結果に引用符が付くのはなぜですか?

RFC 4180は、コンマ、引用符、改行を含むフィールドを引用符で囲むよう求めています。普通のフィールドは、引用符なしでそのまま書かれます。

XML で制御文字が拒否されるのはなぜですか?

XML 1.0では、U+0001のような文字は、参照としてさえ許されないため、このページでも書けません。先にテキストから取り除いてください。

出典

数値と文章の最終確認日:2026年11月10日火曜日。

当サイトの運営に必要なCookieを使用します。お客様の同意があれば、Googleは広告用Cookieを使い、パーソナライズ広告を表示します。拒否された場合も広告は表示されますが、パーソナライズはされません。