Escape / Unescape สตริง
Escape หรือ unescape สตริงสำหรับ JSON, JavaScript, Java, XML, SQL และ CSV
เกี่ยวกับเครื่องมือนี้
เปลี่ยนสตริงหลายบรรทัดที่มีอัญประกาศให้เป็นสิ่งที่วางลงในค่าของ JSON, ลิเทอรัลของ JavaScript, สตริงของ Java, โหนดข้อความของ XML, ลิเทอรัลของ SQL หรือเซลล์ CSV ได้ — และย้อนกระบวนการเมื่อคุณเจอข้อความที่ถูก escape ไว้ในไฟล์ล็อกแล้วอยากอ่านมัน หกภาษาถิ่น สองทิศทาง
แต่ละภาษาถิ่นทำตามข้อกำหนดจริงของตน ไม่ใช่ตัวหารร่วมที่ต่ำที่สุด: JSON escape อักขระควบคุมเป็น \uXXXX, JavaScript escape อัญประกาศเดี่ยวและ backtick เพิ่มด้วย, Java เข้ารหัสอักขระที่ไม่ใช่ ASCII เป็นลำดับ \u แบบ UTF-16, SQL ใช้อัญประกาศเดี่ยวซ้อน, CSV ห่อและซ้อนอัญประกาศตาม RFC 4180 และ XML ใช้เอนทิตีห้าตัวที่นิยามไว้ล่วงหน้า ส่วนตัวถอด escape เข้าใจรูปแบบ \x, \u และ \u{…} และรายงานลำดับที่ผิดรูปพร้อมตำแหน่ง
สตริงที่ถูก escape มักเป็นสตริงเชื่อมต่อ โทเคน และชิ้นส่วนคิวรี ที่นี่ทำงานในเครื่อง — วางได้ตามสบาย
คำถามที่พบบ่อย
- ไฟล์คอนฟิก JSON ต้องใช้ภาษาถิ่นใด?
- JSON มัน escape อัญประกาศคู่ แบ็กสแลช และอักขระควบคุม ตรงตามที่ RFC 8259 กำหนดทุกประการ และคงยูนิโค้ดให้อ่านได้ ผลลัพธ์ใส่ลงในค่าสตริง JSON ใดก็ได้ — โดยไม่มีอัญประกาศคร่อม ซึ่งเครื่องมือปล่อยให้เป็นหน้าที่ของคุณ
- ภาษาถิ่น JSON กับ JavaScript ต่างกันอย่างไร?
- JavaScript escape อัญประกาศเดี่ยวและ backtick เพิ่มเข้าไปด้วย ผลลัพธ์จึงปลอดภัยในรูปแบบอัญประกาศทั้งสามของ JS ส่วน JSON ต้องจัดการเฉพาะอัญประกาศคู่ ในการถอด escape จะรับได้ทั้งสองแบบ บวกกับรูปแบบ \x และ \u{…} ที่ JSON ไม่ได้นิยามไว้
- การ escape แบบ SQL ทำให้ข้อมูลจากผู้ใช้ปลอดภัยพอจะต่อสตริงเข้าไปหรือไม่?
- มันผลิตลิเทอรัลสตริง SQL ที่ถูกต้อง (อัญประกาศถูกซ้อน) แต่การ escape แล้วต่อสตริงยังเป็นรูปแบบที่ผิดสำหรับข้อมูลที่ไม่น่าไว้ใจ — ให้ใช้คิวรีแบบมีพารามิเตอร์ เครื่องมือนี้มีไว้สำหรับข้อมูลตั้งต้น การย้ายฐานข้อมูล และการดีบัก ไม่ใช่การป้องกันการแทรกโค้ด
- ทำไมการถอด escape สตริงของฉันจึงล้มเหลว?
- แบ็กสแลชที่ตามด้วยสิ่งที่ไม่ใช่ escape ที่นิยามไว้ (\q หรือ \u12 ที่ขาดตอน) ถือว่าผิดรูป และข้อความแสดงข้อผิดพลาดจะระบุดัชนีที่มีปัญหา หากข้อความของคุณมีเส้นทางแบบวินโดวส์ตามตัวอักษร ให้ escape มันก่อน — C:\temp คือแท็บที่ปลอมตัวมา