คำตอบอื่น ๆ ที่มีอยู่ทั้งหมดขึ้นอยู่กับคำจำกัดความและการตรวจจับของบล็อก กลยุทธ์ของฉันสำหรับการลบแบบนี้คือการใช้c
คำสั่งรวมกับการf
เคลื่อนที่และตัวละครจริงเพื่อหยุด นี่จะเป็นการลบอักขระหยุด แต่เนื่องจากเป็นปุ่มสุดท้ายที่คุณกดซ้ำสองครั้งมีค่าใช้จ่ายเท่ากับศูนย์และจะแทรกอีกครั้งเนื่องจากc
การเปลี่ยนแปลงเป็นโหมดการแทรก
เพื่ออธิบายพร้อมตัวอย่างสำหรับ
func1(x|, func2(), y);
คำสั่งc2f))
จะให้
func1(x)|;
ซึ่งในตอนแรกอาจดูสง่างามน้อยกว่าคำตอบอื่น ๆ อย่างไรก็ตามสังเกตว่ากลยุทธ์นี้เป็นสากลและไม่ได้ขึ้นอยู่กับคำจำกัดความของบล็อกใด ๆ
เช่นกับ
<div| class="some-class">text</div>
คำสั่งcf>>
จะให้
<div>|text</div>
หรือเมื่อแก้ไขไฟล์ csv เช่น
2016-11-29,question,vi|.stackexchange.com,10435
คำสั่งcf,,
จะให้
2016-11-29,question,vi,|10435
บ่อยครั้งที่ฉันใช้สิ่งนี้เพื่อลบสตริงที่เหลือจาก
printf("Hello world| - a boring example\n");
ไปยัง
printf("Hello world\|n");
กับ cf\\
หรือจาก
print("Hello world| - a boring example");
ไปยัง
print("Hello world"|);
cf""
กับ
สิ่งนี้จะเปลี่ยนตำแหน่งปัจจุบันไปยังตำแหน่งที่แตกต่างกันเล็กน้อยจากที่ขอและเปลี่ยนเป็นโหมดแทรก แต่ฉันต้องการแบ่งปัน go-to-solution เพื่อลบสิ่งที่เหลือทั้งหมด
C);
ในกรณีนี้โดยเฉพาะ