跳到主要內容
Tools

字串跳脫

把文字跳脫成 JSON、JavaScript、HTML、XML、CSV、SQL、Shell 或正規表達式字串,或還原回原文。

跳脫雙引號、反斜線與控制字元。還原時可以包含或不包含前後的雙引號。

要編碼網址參數?請使用 URL 編解碼。

0 個字元 · 1 行

0 個字元 · 1 行

使用說明

  1. 選擇「跳脫」把原始文字轉成可以放進程式碼的字串,或選擇「還原」把跳脫過的字串轉回原文。
  2. 在「格式」選擇目標語言,例如 JSON、JavaScript、SQL 或 Shell。
  3. 在輸入欄位貼上文字,結果會即時顯示;還原失敗時,下方會標出出錯的位置。
  4. 按「複製」取得結果,或按「對調輸入與結果」反向轉換。

常見問題

我的資料會被上傳嗎?

不會。所有轉換都在你的瀏覽器中完成。

SQL 跳脫可以防止 SQL injection 嗎?

把 ' 變成 '' 是標準 SQL 的寫法,適合手動撰寫查詢或匯入資料。但在程式中組合 SQL 時,請一律使用參數化查詢(prepared statement),不要自己串接字串。不同資料庫的規則也不完全相同,例如 MySQL 預設把反斜線當成跳脫字元。

Shell 跳脫為什麼用單引號?

在 POSIX Shell(bash、zsh、sh)中,單引號內的所有字元都不會被解讀,包括 $、`、\ 與空白,最安全。唯一的例外是單引號本身,所以把 ' 寫成 '\'':先結束引號、放一個跳脫的單引號、再重新開始引號。還原時也接受雙引號與反斜線的寫法,但不會展開 $變數。

JSON 與 JavaScript 字串有什麼不同?

JSON 只能用雙引號,跳脫字元也比較少(沒有 \x、\v、\0 與 \u{…})。JavaScript 可以用單引號、雙引號或反引號,樣板字串(反引號)中的 ${ 會被當成運算式,所以也要跳脫。

HTML 內文與屬性值的跳脫有什麼不同?

元素內容只需要跳脫 &、< 與 >;放在屬性值時還要跳脫引號,否則引號會提早結束屬性。還原時支援數字參照(&#20013; 與 &#x4E2D;)和常用的具名實體;完整的實體表請使用 HTML 實體編解碼工具。

網址要怎麼跳脫?

網址參數使用百分比編碼(%20 這種寫法),規則與字串跳脫不同,請使用 URL 編解碼工具。

鍵盤快捷鍵

/
搜尋工具(在工具頁會回到首頁的搜尋欄)
?
顯示這個說明
Esc
關閉對話框
Ctrl / ⌘Enter
執行工具的主要動作(支援的工具)

在輸入框中打字時,/ 與 ? 不會觸發快捷鍵。