ใช้ Regex ใน LibreOffice Writer เพื่อแก้ไขข้อความแบบเป็นชุด

สำหรับการแก้ไขขั้นสูงใน LibreOffice Writer ให้เปิดแก้ไข > ค้นหาและแทนที่ขยายตัวเลือกเพิ่มเติมและเปิดใช้งาน นิพจน์ปกติป้อนรูปแบบในช่อง ค้นหา และหากคุณต้องการเปลี่ยนข้อความที่ตรงกัน ให้ป้อนข้อความที่จะใช้แทนที่ในช่อง แทนที่ ใช้ค้นหาทั้งหมดหรือค้นหาถัดไปเพื่อตรวจสอบการจับคู่ก่อนเลือกแทนที่ทั้งหมด

คู่มือช่วยเหลือ LibreOffice 26.8 ฉบับปัจจุบันอธิบายขั้นตอนการทำงานนี้ไว้ Regex สามารถลบช่องว่างที่ซ้ำกัน ค้นหาข้อความที่มีโครงสร้าง เช่น วันที่ หรือจัดเรียงส่วนต่างๆ ของชื่อใหม่ได้ในขั้นตอนเดียว รูปแบบด้านล่างนี้ใช้สำหรับกล่องโต้ตอบค้นหาและแทนที่ของ Writer อย่าคิดว่าโปรแกรมอื่นใช้ไวยากรณ์เดียวกัน

เปิดใช้งานฟังก์ชันค้นหาและแทนที่อย่างปลอดภัย

บันทึกสำเนาเอกสารสำคัญก่อนทำการแก้ไขครั้งใหญ่ วิธีนี้จะช่วยให้คุณมีไฟล์สำรองที่สะอาดตาหากรูปแบบตรงกันมากกว่าที่คาดไว้ ใน Writer ให้เลือกแก้ไข > ค้นหาและแทนที่หรือกดCtrl+Hบน Windows และ Linux หรือCommand+Hบน macOS

  1. คลิก " ตัวเลือกเพิ่มเติม"เพื่อขยายหน้าต่างโต้ตอบ
  2. เลือกใช้Regular expressionsและเปิดใช้งานไว้ทั้งสำหรับการค้นหารูปแบบและสำหรับการแทนที่โดยใช้ regex
  3. ป้อนรูปแบบทดสอบขนาดเล็ก จากนั้นคลิก " ค้นหาถัดไป"เพื่อตรวจสอบการจับคู่หนึ่งรายการ หรือ " ค้นหาทั้งหมด"เพื่อเลือกการจับคู่ทั้งหมด

LibreOffice ถือว่าจุด ( .) เป็นอักขระเดี่ยว และเครื่องหมายดอกจัน ( *) เป็นอักขระซ้ำกันตั้งแต่ศูนย์ตัวขึ้นไปของนิพจน์ก่อนหน้า ดังนั้น จึง.*หมายถึงอักขระตั้งแต่ศูนย์ตัวขึ้นไปภายในย่อหน้า เครื่องหมายดอกจันธรรมดาไม่เหมือนกับสัญลักษณ์ตัวแทน (wildcard) ที่ใช้ในการค้นหาไฟล์ทั่วไป ซึ่งหมายถึง "ข้อความใดๆ" การค้นหานิพจน์ปกติของ Writer มีเอกสารอธิบายแยกต่างหากจากการค้นหาสัญลักษณ์ตัวแทน

เมนูแก้ไข (Edit) เปิดอยู่ในโปรแกรม Writer โดยมีไฮไลต์ "ค้นหาและแทนที่" (Find & Replace) อยู่เหนือหน้าที่มีข้อความว่า "Smith, Ana" และ "Lee, Jordan"
เปิดเมนูแก้ไข แล้วเลือก ค้นหาและแทนที่ เพื่อเริ่มการแก้ไขตามรูปแบบในเอกสาร Writer ปัจจุบัน

สร้างรูปแบบที่ตรงกับสิ่งที่คุณตั้งใจไว้เท่านั้น

เริ่มต้นด้วยรูปแบบเฉพาะที่เล็กที่สุดที่อธิบายเป้าหมายของคุณ ใช้ตัวยึดเมื่อทั้งย่อหน้าต้องตรงกัน: ^หมายถึงจุดเริ่มต้นของย่อหน้า และ$หมายถึงจุดสิ้นสุดของย่อหน้า ตัวอย่างเช่น^[[:digit:]]{4}-[[:digit:]]{2}-[[:digit:]]{2}$จะค้นหาย่อหน้าที่ประกอบด้วยเฉพาะวันที่ในรูปแบบ YYYY-MM-DD โดยจะตรวจสอบรูปแบบ ไม่ใช่ว่าวันที่นั้นเป็นวันที่ในปฏิทินจริงหรือไม่

องค์ประกอบพื้นฐานที่ใช้กันทั่วไป ได้แก่\dสำหรับตัวเลขทศนิยม\wสำหรับอักขระคำ+สำหรับการทำซ้ำหนึ่งครั้งขึ้นไป และช่วงที่อยู่ในวงเล็บเหลี่ยม เช่น[A-Z]LibreOffice ยังมีเอกสารเกี่ยวกับคลาสของอักขระ เช่น[[:alpha:]]และ[[:digit:]]ควรเลือกใช้คลาสของอักขระเมื่อข้อความอาจมีตัวอักษรนอกเหนือจากตัวอักษรภาษาอังกฤษพื้นฐาน A–Z

หากต้องการลบช่องว่างที่ซ้ำกัน ให้ค้นหา[ ]{2,}และแทนที่ด้วยช่องว่างธรรมดาหนึ่งช่อง รูปแบบนี้จะแก้ไขช่องว่างสองช่องขึ้นไป ไม่ใช่แท็บ คลิก " ค้นหาทั้งหมด"ก่อนเพื่อยืนยันว่าพื้นที่ที่ไฮไลต์คือข้อผิดพลาดด้านระยะห่างที่คุณต้องการแก้ไข

จัดเรียงข้อความใหม่โดยใช้กลุ่มการจับภาพ

วงเล็บใช้สำหรับจับส่วนที่ตรงกันเพื่อให้การแทนที่สามารถนำส่วนเหล่านั้นกลับมาใช้ใหม่ได้ สำหรับเอกสารที่มีชื่อเช่น “Smith, Ana” ให้ใช้รูปแบบการค้นหานี้:

([A-Za-z]+), ([A-Za-z]+)

ป้อนข้อความนี้ลงในช่องแทนที่:

$2 $1

กลุ่มแรกคือนามสกุล และกลุ่มที่สองคือชื่อ ดังนั้น “Smith, Ana” จะกลายเป็น “Ana Smith” ใน LibreOffice กลุ่มการจับคู่จะเขียนเป็น, , และอื่นๆ ในนิพจน์ค้นหา จากนั้นอ้างอิงเป็น$1, $2, และอื่นๆ ในการแทนที่ ตัวอย่างนี้[A-Za-z]ครอบคลุมเฉพาะตัวอักษรภาษาอังกฤษพื้นฐานเท่านั้น สำหรับชื่อที่มีตัวอักษรเน้นเสียง ให้ใช้[[:alpha:]]คลาสที่ระบุไว้ในเอกสารในทั้งสองกลุ่มและตรวจสอบผลลัพธ์

หน้าต่างค้นหาและแทนที่แบบขยายใน Writer จะแสดงว่าตัวเลือกนิพจน์ปกติ (Regular expressions) ถูกเลือกไว้แล้ว
ขยายตัวเลือกเพิ่มเติมและเปิดใช้งานนิพจน์ปกติก่อนป้อนรูปแบบนิพจน์ปกติ

รูปแบบ regex ของนักเขียนที่มีประโยชน์

งานค้นหาแทนที่
ยุบช่องว่างที่ซ้ำกัน[ ]{2,}เว้นวรรคหนึ่งช่อง
เรียงลำดับใหม่ “นามสกุล, ชื่อ”([[:alpha:]]+), ([[:alpha:]]+)$2 $1
จัดรูปแบบข้อความใหม่ YYYY-MM-DD([[:digit:]]{4})-([[:digit:]]{2})-([[:digit:]]{2})$2/$3/$1
ค้นหาย่อหน้าว่างเปล่า^$ตรวจสอบก่อนทำการเปลี่ยน

รูปแบบวันที่เปลี่ยนลำดับการแสดงผลเป็น MM/DD/YYYY; ควรใช้เฉพาะเมื่อรูปแบบนี้เหมาะสมกับผู้อ่านของคุณเท่านั้น ระบบจะไม่ตรวจสอบความถูกต้องของวันที่หรือเข้าใจข้อกำหนดของภาษาท้องถิ่น สำหรับย่อหน้าว่าง ให้ใช้ฟังก์ชัน "ค้นหาถัดไป " ก่อน การลบเครื่องหมายย่อหน้าอาจเปลี่ยนแปลงระยะห่างและโครงสร้างเอกสาร ดังนั้นอย่าทำการแทนที่แบบกว้างๆ โดยไม่ตรวจสอบผลลัพธ์ก่อน

หน้าต่างค้นหาและแทนที่แสดงรูปแบบ ([A-Za-z]+), ([A-Za-z]+) และการแทนที่ $2 $1 โดยเลือก Smith, Ana ในเอกสาร
กลุ่มการจับคู่ช่วยให้การแทนที่สามารถนำส่วนประกอบทั้งสองส่วนของชื่อที่ตรงกันแต่ละชื่อมาใช้ซ้ำในลำดับใหม่ได้

ตรวจสอบความตรงกันก่อนทำการเปลี่ยน

ใช้ฟังก์ชัน Find Nextเพื่อดูผลลัพธ์ที่ตรงกันทีละไม่กี่รายการเมื่อรูปแบบยังไม่ใหม่ ใช้ฟังก์ชันFind Allเพื่อดูผลลัพธ์ที่เลือกทั้งหมดก่อนที่จะแทนที่ หากฟังก์ชันไฮไลต์ส่วนใดส่วนหนึ่งของคำ ตรวจจับเครื่องหมายวรรคตอนที่ไม่คาดคิด หรือข้ามตัวอักษรที่มีเครื่องหมายเน้นเสียง ให้จำกัดหรือแก้ไขรูปแบบแทนที่จะยอมรับผลลัพธ์

เมื่อเลือกถูกต้องแล้ว ให้คลิก แทนที่เพื่อเปลี่ยนทีละรายการ หรือแทนที่ทั้งหมด เพื่อเปลี่ยนทั้งเอกสาร ตรวจสอบผลลัพธ์ทันที หากไม่ถูกต้อง ให้ใช้Ctrl+Z (หรือคำสั่ง เลิกทำ บนระบบของคุณ) ก่อนทำการแก้ไขอื่นๆ จากนั้นปรับรูปแบบอีกครั้ง

ข้อจำกัดที่สำคัญอย่างหนึ่งคือ การค้นหาด้วย regex ของ Writer ทำงานภายในย่อหน้าเท่านั้น จุดจะไม่ข้ามตัวแบ่งย่อหน้า ในช่องค้นหา\nจะตรงกับตัวแบ่งบรรทัดที่แทรกด้วยตนเองโดยใช้ Shift+Enter ในช่องแทนที่ของ Writer \nจะแทรกตัวแบ่งย่อหน้า โปรดใช้การแทนที่อย่างระมัดระวัง เนื่องจากอาจแบ่งข้อความออกเป็นย่อหน้าใหม่ได้

หน้าเพจของนักเขียนแสดงชื่อที่เรียงลำดับใหม่เป็น Ana Smith และ Jordan Lee หลังจากทำการแทนที่แล้ว
ตรวจสอบข้อความที่แก้ไขแล้วในบริบทหลังจากทำการแทนที่แล้ว

ยืนยันการแก้ไข

  • ตรวจสอบย่อหน้าที่แก้ไขแล้วเพื่อหาเครื่องหมายวรรคตอนที่หายไป ช่องว่างที่ซ้ำกัน หรือข้อความที่เชื่อมต่อข้ามขอบเขต
  • เรียกใช้รูปแบบค้นหาเดิมอีกครั้ง หากงานคือการลบรูปแบบ จะต้องไม่มีการจับคู่ที่ไม่ต้องการหลงเหลืออยู่
  • สำหรับการแปลงข้อมูล เช่น การเรียงลำดับชื่อหรือวันที่ใหม่ ให้เปรียบเทียบตัวอย่างที่แก้ไขแล้วหลายๆ ตัวอย่างกับต้นฉบับก่อนบันทึก

สำหรับไวยากรณ์ฉบับเต็มและกรณีพิเศษ โปรดดูคู่มือ Writer ของ LibreOffice เกี่ยวกับการค้นหาด้วยนิพจน์ปกติ เอกสารอ้างอิงนิพจน์ปกติและความช่วยเหลือในกล่องโต้ตอบค้นหาและแทนที่

ฝากความเห็น

จำกัดการวินิจฉัยเพิ่มเติมและการอัปเดตข้อมูลใน LibreOffice

จำกัดการวินิจฉัยเพิ่มเติมและการอัปเดตข้อมูลใน LibreOffice

ปิดการแสดงสถิติการอัปเดตและการแจ้งเตือนรายงานข้อผิดพลาดของ LibreOffice จากนั้นตรวจสอบว่าการตั้งค่าเหล่านั้นครอบคลุมอะไรบ้างและวิธีการตรวจสอบความถูกต้อง

ใช้ Regex ใน LibreOffice Writer เพื่อแก้ไขข้อความแบบเป็นชุด

ใช้ Regex ใน LibreOffice Writer เพื่อแก้ไขข้อความแบบเป็นชุด

จัดระยะห่างให้เรียบร้อย ค้นหาข้อความที่มีโครงสร้าง และจัดเรียงชื่อใหม่ด้วยรูปแบบ regex ของ Writer ที่คุณสามารถดูตัวอย่างก่อนทำการแทนที่ได้

ตั้งค่าการจัดเรียงย่อหน้าภาษาอาหรับและฮิบรูให้เขียนจากขวาไปซ้ายในโปรแกรม Writer

ตั้งค่าการจัดเรียงย่อหน้าภาษาอาหรับและฮิบรูให้เขียนจากขวาไปซ้ายในโปรแกรม Writer

เปิดใช้งานการควบคุมแบบสองทิศทางของ Writer ตั้งค่าการไหลของย่อหน้าแบบ RTL และตรวจสอบข้อความผสมภาษาอาหรับหรือฮิบรูโดยไม่รบกวนคำและตัวเลขภาษาอังกฤษ

คืนค่าแบบอักษร Calibri และ Arial ใน LibreOffice โดยไม่ต้องเดา

คืนค่าแบบอักษร Calibri และ Arial ใน LibreOffice โดยไม่ต้องเดา

ติดตั้งฟอนต์ Linux ที่เข้ากันได้กับระบบเมตริก หรือแมปฟอนต์สำรองของ LibreOffice โดยคำนึงถึงข้อกำหนดด้านลิขสิทธิ์ฟอนต์และความแตกต่างของเค้าโครงของ Microsoft ด้วย

สร้างไฟล์ PDF ที่กรอกข้อมูลได้จากแบบฟอร์มใน LibreOffice Writer

สร้างไฟล์ PDF ที่กรอกข้อมูลได้จากแบบฟอร์มใน LibreOffice Writer

เพิ่มช่องข้อความที่ใช้งานได้ ช่องทำเครื่องหมาย และเมนูแบบเลื่อนลงใน Writer จากนั้นส่งออกเป็นไฟล์ PDF ที่ผู้รับสามารถกรอกข้อมูลและบันทึกได้

สร้างไฟล์ PDF ด้วย LibreOffice โดยคงแบบอักษรที่คุณใช้ไว้

สร้างไฟล์ PDF ด้วย LibreOffice โดยคงแบบอักษรที่คุณใช้ไว้

แก้ไขปัญหาฟอนต์หายไปหรือถูกแทนที่ในไฟล์ PDF ที่สร้างด้วย LibreOffice Writer เลือกโปรไฟล์การส่งออกที่ถูกต้อง และตรวจสอบว่าฟอนต์ใดบ้างที่ฝังอยู่ในไฟล์ก่อนที่จะแชร์

แปลงไฟล์ DOCX เป็น PDF จำนวนมากด้วย LibreOffice CLI

แปลงไฟล์ DOCX เป็น PDF จำนวนมากด้วย LibreOffice CLI

แปลงโฟลเดอร์เอกสาร Word เป็นไฟล์ PDF ด้วยคำสั่งของ LibreOffice จัดการโฟลเดอร์ย่อยได้อย่างปลอดภัย และตรวจสอบผลลัพธ์ก่อนแชร์

ใช้เทมเพลตของคุณสำหรับเอกสารที่เขียนขึ้นใหม่ทุกฉบับ

ใช้เทมเพลตของคุณสำหรับเอกสารที่เขียนขึ้นใหม่ทุกฉบับ

ตั้งค่าเทมเพลต LibreOffice Writer แบบกำหนดเองเป็นค่าเริ่มต้น เพื่อให้เอกสารใหม่เปิดขึ้นด้วยสไตล์และเค้าโครงหน้ากระดาษที่คุณต้องการ

ตั้งค่า LibreOffice ให้รู้จัก Java Runtime ของคุณ

ตั้งค่า LibreOffice ให้รู้จัก Java Runtime ของคุณ

ติดตั้ง Java runtime ที่เข้ากันได้ เปิดใช้งานใน LibreOffice และแก้ไขปัญหาเมื่อรายการ JRE ว่างเปล่า โดยไม่ต้องเปลี่ยนแปลงการตั้งค่าที่ไม่เกี่ยวข้อง

เรียกใช้งาน LibreOffice Headless ใน Docker เพื่อแปลงไฟล์ PDF

เรียกใช้งาน LibreOffice Headless ใน Docker เพื่อแปลงไฟล์ PDF

สร้างคอนเทนเนอร์ LibreOffice ขนาดเล็ก แปลงเอกสารสำนักงานโดยไม่ต้องใช้ GUI และตรวจสอบความถูกต้องของไฟล์ PDF ที่ส่งออก พร้อมทั้งจำกัดการเข้าถึงไฟล์จากเครื่องโฮสต์