สิ่งนี้ไม่สามารถทำได้ผ่านการแสดงออกปกติเพียงอย่างเดียว คุณต้องการอะตอมพิเศษที่ทำงานเหมือน กลุ่มจับภาพ แต่แทนที่จะรวบรวมคอลัมน์จากนั้นอะตอมที่สอดคล้องกันเพื่อเรียกคืน ดีที่สุดที่คุณสามารถทำได้คือจับคู่แต่ละแถวในบรรทัดถัดไปสำหรับตัวอย่างของคุณ
/ab\ze.*\n.*ba.*\n.*ab/
ด้วยสิ่งนั้นไม่ใช่เพียงแค่เส้นที่ตรงกับเส้นของบล็อกด้วยตัวเองเท่านั้น แต่เกิดขึ้นทั้งหมดที่มีข้อความของบล็อกแม้ว่าจะไม่ใช่แค่การจัดแนวแนวตั้งเดียวกันและเน้นเฉพาะการจับคู่ของบรรทัดแรกเท่านั้น ของฉัน ค้นหาปลั๊กอินไฮไลต์ ให้ฟังก์ชั่นนี้ (แมปไปที่ {Visual}*
) เช่นกัน
หากไม่เพียงพอ (คุณสามารถใช้ /c
ติดธง :substitute
หากต้องการตรวจสอบและรับทราบการแข่งขันแต่ละครั้งด้วยตนเอง) คุณต้องสร้างโครงสร้างพื้นฐานการค้นหา (และทดแทน) ของคุณเองซึ่งเทียบเท่ากับ /
, n
/ N
และ :s
และยืนยันเพิ่มเติมสำหรับการจัดแนวบล็อกใน Vimscript