แปลงรูปแบบการตั้งชื่อ (camelCase, snake_case …)
แปลงชื่อทีละบรรทัด หรือเปลี่ยนชื่อคีย์ทั้งหมดในเอกสาร JSON ระหว่าง camelCase, PascalCase, snake_case, kebab-case และอื่น ๆ
วิธีใช้
- เมื่อ “ใช้กับ” ตั้งไว้ที่ “ข้อความทีละบรรทัด” ให้วางหรือพิมพ์ชื่อลงใน “ข้อมูลเข้า” บรรทัดละหนึ่งชื่อ แต่ละบรรทัดจะถูกแปลงแยกกัน และบรรทัดว่างรวมถึงช่องว่างหรือแท็บที่ต้นหรือท้ายบรรทัดจะคงไว้ตามเดิม
- เลือกรูปแบบใน “แปลงเป็น” เช่น camelCase, snake_case หรือ CONSTANT_CASE ผลลัพธ์จะอัปเดตขณะที่คุณพิมพ์หรือเปลี่ยนตัวเลือก จึงไม่มีปุ่มแปลง
- หากต้องการเปลี่ยนชื่อคีย์ในเอกสาร JSON ให้ตั้ง “ใช้กับ” เป็น “คีย์ JSON (ค่าไม่เปลี่ยน)” แล้ววางเอกสารทั้งหมด คีย์ภายในออบเจ็กต์และอาร์เรย์ที่ซ้อนกันจะถูกเปลี่ยนชื่อด้วย
- ในโหมด “ข้อความทีละบรรทัด” กล่อง “ทุกรูปแบบของบรรทัดแรก” จะแสดงบรรทัดแรกของข้อมูลเข้าที่ไม่ใช่บรรทัดว่างในทั้งสิบรูปแบบ คุณจึงเปรียบเทียบได้ก่อนเลือก
- ตรวจสอบ “ผลลัพธ์” แล้วคลิก “คัดลอกผลลัพธ์”
คำถามที่พบบ่อย
ข้อความที่ฉันป้อนถูกส่งไปที่ใดหรือไม่
ไม่ การแปลงทำงานในเบราว์เซอร์ของคุณด้วย JavaScript และชื่อหรือ JSON ที่คุณป้อนจะไม่ถูกอัปโหลดไปยัง LeedyBox
เครื่องมือตัดสินอย่างไรว่าคำหนึ่งจบตรงไหนและคำถัดไปเริ่มตรงไหน
คำใหม่จะเริ่มเมื่อตัวพิมพ์เล็กหรือตัวเลขตามด้วยตัวพิมพ์ใหญ่ (fooBar, user2Name) ก่อนตัวพิมพ์ใหญ่ตัวสุดท้ายในกลุ่มตัวพิมพ์ใหญ่ที่เรียงกันเมื่อมีตัวพิมพ์เล็กตามหลัง (XMLHttp แยกเป็น XML และ Http) และที่อักขระใดก็ตามที่ไม่ใช่ตัวอักษรหรือตัวเลข เช่น ช่องว่าง ขีดล่าง ขีดกลาง หรือจุด การเปลี่ยนจากตัวอักษรเป็นตัวเลขหรือจากตัวเลขเป็นตัวอักษรเพียงอย่างเดียวไม่ได้ทำให้เริ่มคำใหม่ base64Encode จึงกลายเป็น base64_encode ใน snake_case และ user2name ยังคงเป็นคำเดียว
ทำไมแปลงกลับแล้วจึงไม่ได้ชื่อเดิม
รายละเอียดบางอย่างหายไประหว่างการแปลง แต่ละคำจะถูกปรับตัวพิมพ์ใหม่ตามรูปแบบที่เลือก parseHTML จึงกลายเป็น parse_html ใน snake_case และเมื่อแปลงกลับเป็น camelCase จะได้ parseHtml นอกจากนี้ตัวเลขจะรวมเข้ากับคำข้างหน้าเมื่อตัวคั่นหายไป เช่น total_amount_2 กลายเป็น totalAmount2 ใน camelCase แล้วกลายเป็น total_amount2 ใน snake_case หากต้องการแปลงไปกลับให้ได้ชื่อเดิมทุกตัวอักษร ให้เก็บชื่อต้นฉบับไว้
ทำไมเครื่องหมายวรรคตอนจึงหายไป และทำไม Title Case จึงขึ้นต้นทุกคำด้วยตัวพิมพ์ใหญ่
อักขระทุกตัวที่ไม่ใช่ตัวอักษรหรือตัวเลขจะถือเป็นจุดแบ่งคำ เครื่องหมายวรรคตอนและสัญลักษณ์จะไม่ถูกคัดลอกไปยังผลลัพธ์ และจะมีเพียงตัวคั่นของรูปแบบนั้น (หากรูปแบบนั้นมีตัวคั่น) วางไว้ระหว่างคำ “Hello, world!” จึงกลายเป็น “hello world” ใน lower case และ don't กลายเป็น don t ส่วน Title Case จะขึ้นต้นทุกคำด้วยตัวพิมพ์ใหญ่ รวมถึงคำสั้น ๆ อย่าง of และ the และเปลี่ยนตัวที่เหลือของคำเป็นตัวพิมพ์เล็ก NASA จึงกลายเป็น Nasa และ iPhone กลายเป็น I Phone เครื่องมือนี้ออกแบบมาสำหรับชื่อและตัวระบุ ไม่ใช่ประโยค
คีย์ JSON อย่าง _id, @type หรือ $ref จะเป็นอย่างไร
สัญลักษณ์ที่อยู่หน้าคีย์ถือเป็นตัวคั่น จึงถูกลบออก ใน camelCase _id จะกลายเป็น id, @type กลายเป็น type และ $ref กลายเป็น ref คีย์ที่มีแต่สัญลักษณ์ เช่น $ จะคงชื่อเดิม หากคีย์สองตัวในออบเจ็กต์เดียวกันได้ชื่อเดียวกัน เช่น _id กับ id หรือ user_name กับ userName เครื่องมือจะแสดงข้อผิดพลาดที่ระบุชื่อคีย์ทั้งสองและพาธของออบเจ็กต์นั้น (เช่น $ สำหรับระดับบนสุด) และจะไม่แปลงสิ่งใดเลย ค่าจึงไม่ถูกเขียนทับ
โหมด JSON เปลี่ยนอย่างอื่นนอกจากคีย์หรือไม่
เอกสารจะถูกแยกวิเคราะห์แล้วเขียนออกมาใหม่โดยเยื้อง 2 ช่องว่าง ระยะเว้นและการขึ้นบรรทัดใหม่จึงอาจเปลี่ยนไป ตัวเลขจะผ่านการประมวลผลของ JavaScript: 1.0 จะเขียนเป็น 1 และ 1e2 เป็น 100 จำนวนเต็มที่มากกว่า 9007199254740991 และทศนิยมที่มีหลายหลักอาจถูกปัดเศษ ส่วนตัวเลขที่ใหญ่เกินกว่าที่ JavaScript รองรับ เช่น 1e400 จะกลายเป็น null ลำดับ escape บางแบบในสตริงจะถูกเขียนเป็นอักขระธรรมดา เช่น \u00e9 เป็น é และ \/ เป็น / คีย์ที่เป็นหรือกลายเป็นจำนวนเต็มที่น้อยกว่า 4294967295 และไม่มีเลข 0 นำหน้า เช่น "2" หรือ "_3" จะย้ายไปอยู่ก่อนคีย์อื่นในออบเจ็กต์เดียวกัน โดยเรียงตามค่าตัวเลข หากคีย์เดียวกันปรากฏสองครั้งในออบเจ็กต์เดียว จะเก็บไว้เฉพาะค่าสุดท้ายโดยไม่มีคำเตือน ข้อมูลเข้าต้องเป็น JSON แบบเคร่งครัด ความคิดเห็น (comment) และจุลภาคท้ายรายการจึงทำให้เกิดข้อผิดพลาด
ใช้กับตัวอักษรที่มีเครื่องหมายเสริมและอักษรที่ไม่ใช่ละตินได้หรือไม่
ตัวอักษรจากทุกระบบการเขียนนับเป็นอักขระของคำ และตัวอักษรที่มีเครื่องหมายเสริมซึ่งเก็บเป็นอักขระเดียว เช่น é จะถูกจัดการเหมือนตัวอักษรอื่น ๆ ระบบการเขียนที่ไม่มีตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก เช่น เกาหลี จีน และญี่ปุ่น จะคงอักขระไว้ตามเดิม และมีเพียงตัวคั่นระหว่างคำที่เปลี่ยนตามรูปแบบที่เลือก การเปลี่ยนเป็นตัวพิมพ์ใหญ่หรือเล็กเป็นไปตามกฎทั่วไปของ Unicode ß จึงกลายเป็น SS ใน UPPER CASE และ İ ตัวใหญ่จะกลายเป็น i ธรรมดาเมื่อเปลี่ยนเป็นตัวเล็ก หากเป็นชื่อภาษาตุรกีหรืออาเซอร์ไบจาน ให้เปิด "ตัวอักษรภาษาตุรกี" แล้ว I จะกลายเป็น ı และ i จะกลายเป็น İ เครื่องหมายที่ประกอบกับอักขระอื่น (combining mark) เช่น วรรณยุกต์ไทย สระไทยและสระฮินดี หรือเครื่องหมายเน้นเสียงที่เก็บเป็นอักขระแยก จะติดอยู่กับตัวอักษรของมันตามเดิม ข้อความที่เขียนโดยไม่เว้นวรรคระหว่างคำ เช่น ภาษาไทย จีน หรือญี่ปุ่น จะถูกแยกเฉพาะตรงที่มีช่องว่างหรือตัวคั่นอื่น เช่น ชื่อ ผู้ใช้ จะกลายเป็น ชื่อ_ผู้ใช้ ใน snake_case