เครื่องมือเรียงบรรทัดข้อความ — A–Z, Z–A
เรียงบรรทัดข้อความตามตัวอักษรหรือลำดับย้อนกลับ พร้อมตัวเลือกเปรียบเทียบแบบไม่สนตัวพิมพ์ ลบบรรทัดซ้ำ ลบบรรทัดว่าง และตัดช่องว่างหัวท้าย ทุกอย่างทำงานในเบราว์เซอร์ ไม่มีการส่งข้อมูลไปยังเซิร์ฟเวอร์
วิธีการทำงาน
วิธีการทำงานของการเรียงข้อความ
การเรียงจะแบ่งข้อความออกเป็นบรรทัดๆ จัดลำดับตามหลัก lexicographic แล้วนำกลับมารวมกัน การเรียง lexicographic ใช้หลักการเดียวกับพจนานุกรม: ตัวอักษรถูกเปรียบเทียบทีละตัวจากซ้ายไปขวาโดยใช้ค่า Unicode code point
โดยค่าเริ่มต้น เครื่องมือนี้ใช้การเปรียบเทียบแบบไม่สนตัวพิมพ์ ดังนั้น 'apple', 'Apple' และ 'APPLE' จึงถือว่าเหมือนกันในการเรียง เปิดใช้โหมดแยกตัวพิมพ์เมื่อต้องการให้ตัวพิมพ์ใหญ่อยู่ก่อนตัวพิมพ์เล็ก
กรณีการใช้งานทั่วไป
การเรียงรายชื่อตามตัวอักษร แท็กคลาวด์ หรือค่าในคอลัมน์ CSV เป็นงานที่พบบ่อยที่สุด นักพัฒนามักเรียง import statement หรือ configuration key เพื่อให้ code review ง่ายขึ้นและ diff output สะอาดขึ้น
นักวิเคราะห์ข้อมูลใช้การเรียงบรรทัดเพื่อค้นหารายการซ้ำในรายการที่ export มาอย่างรวดเร็ว หรือจัดแนวสองชุดข้อมูลก่อนการเปรียบเทียบด้วยมือ ตัวเลือกลบซ้ำช่วยบีบรายการที่มีหลายพันรายการให้เหลือแต่ค่าที่ไม่ซ้ำในคลิกเดียว
อัลกอริทึมการเรียง: สิ่งที่เกิดขึ้นเบื้องหลัง
JavaScript engine สมัยใหม่ใช้ TimSort ที่ปรับให้เหมาะสม (ผสมระหว่าง merge sort และ insertion sort) สำหรับ Array.prototype.sort TimSort เป็น stable sort หมายความว่าบรรทัดที่เปรียบเทียบแล้วเท่ากันจะคงลำดับสัมพัทธ์เดิมไว้
สำหรับรายการข้อความส่วนใหญ่ อัลกอริทึมทำงานเสร็จในไม่ถึงหนึ่งมิลลิวินาทีในเบราว์เซอร์ แม้มีหลายหมื่นบรรทัด หากต้องการการเรียงที่คำนึงถึง locale ให้พิจารณาใช้ Intl.Collator ในโค้ดของคุณเอง
คำถามที่พบบ่อย
›การเรียงเกิดขึ้นอัตโนมัติหรือไม่?
ใช่ ผลลัพธ์อัปเดตแบบ real-time ขณะที่คุณพิมพ์หรือเปลี่ยนตัวเลือก ไม่มีปุ่มส่ง
›การเรียงแยกตัวพิมพ์ใหญ่-เล็กโดยค่าเริ่มต้นหรือไม่?
ไม่ใช่ โดยค่าเริ่มต้นเครื่องมือนี้เรียงแบบไม่แยกตัวพิมพ์ ดังนั้น 'Apple' และ 'apple' จะเรียงอยู่ด้วยกัน เปิดใช้ช่องทำเครื่องหมาย 'แยกตัวพิมพ์ใหญ่-เล็ก' เพื่อใช้ลำดับ Unicode code point แบบดิบ
›อะไรนับเป็นหนึ่งบรรทัด?
อักขระขึ้นบรรทัดใหม่ (\n) แต่ละตัวกำหนดจุดสิ้นสุดของบรรทัด ข้อความที่วางจาก spreadsheet หรือ Windows (\r\n) ก็จัดการได้ถูกต้อง
›สามารถเรียงตัวเลขได้หรือไม่?
เครื่องมือนี้เรียงแบบ lexicographic ไม่ใช่ตัวเลข ดังนั้น '10' จะมาก่อน '9' เพราะ '1' < '9' สำหรับการเรียงตัวเลข ให้เติมศูนย์นำหน้า (เช่น '09' กับ '10') ก่อนวาง
›'ลบซ้ำ' ทำงานอย่างไรกันแน่?
เก็บการปรากฏครั้งแรกของแต่ละบรรทัดที่ไม่ซ้ำ และทิ้งบรรทัดที่เหมือนกันที่ตามมา การเปรียบเทียบเป็นไปตามการตั้งค่าตัวพิมพ์ของคุณ
›ข้อมูลของฉันออกจากเบราว์เซอร์หรือไม่?
ไม่ การประมวลผลทั้งหมดเกิดขึ้นในเครื่องใน JavaScript ไม่มีอะไรถูกอัปโหลดไปยังเซิร์ฟเวอร์ใดๆ
›มีจำกัดจำนวนบรรทัดหรือไม่?
เครื่องมือนี้ไม่มีการบังคับใช้ขีดจำกัด ประสิทธิภาพขึ้นอยู่กับอุปกรณ์ของคุณ แต่เบราว์เซอร์สมัยใหม่จัดการได้หลายแสนบรรทัดโดยไม่มีความล่าช้าที่สังเกตได้
›จะเรียงคอลัมน์ CSV ได้อย่างไร?
คัดลอกค่าคอลัมน์จากแอปพลิเคชัน spreadsheet ไปวางในช่องป้อนข้อมูล (วางเป็นหนึ่งค่าต่อบรรทัด) ใช้ตัวเลือก คัดลอกผลลัพธ์ที่เรียงแล้ว แล้ววางกลับ จากนั้นเชื่อมคอลัมน์อื่นๆ ด้วยตนเองหรือด้วยสูตร spreadsheet
เครื่องมือที่เกี่ยวข้อง
อัปเดตล่าสุด: