ฉันจะค้นหารูปแบบที่ไม่คำนึงถึงขนาดตัวพิมพ์ในกลุ่มได้อย่างไร?


18

ฉันค้นหาไฟล์ในvimหรือlessใช้เป็นครั้งคราว/หรือ?เท่าที่ฉันสามารถบอกได้ว่ารูปแบบการค้นหานั้นต้องตรงตามตัวพิมพ์ใหญ่ - เล็ก

ตัวอย่างเช่น/fooไม่พบสิ่งที่/FOOจะทำ มีวิธีทำให้เข้มงวดน้อยลงหรือไม่ ฉันจะค้นหาvimหรือlessหารูปแบบที่ไม่ต้องตรงตามตัวพิมพ์ใหญ่ - เล็กได้อย่างไร


2
ในlessการค้นหาจะไม่คำนึงถึงขนาดตัวพิมพ์เว้นแต่คุณจะใช้สตริงที่มีตัวอักษรตัวพิมพ์ใหญ่ ดังนั้นfooจะตรงFooและFoOแต่FooเพียงจะตรงFooและไม่ได้fooฯลฯ นอกจากนี้ดูที่นี่: น้อยอยู่เสมอกรณีตาย
terdon

1
@terdon น่าสนใจ! ฉันพยายามที่จะเข้าใจว่า "ทำไม" ถึงมีlessพฤติกรรมแบบนั้น แต่ฉันคิดว่านั่นเป็นหัวข้อสำหรับอีกวัน ขอบคุณ!
Mike B

สำหรับสิ่งหนึ่งฉันพบว่ามันมีประโยชน์อย่างยิ่งเมื่อค้นหาผ่านหน้าเว็บของผู้ชาย ฉันเกลียดที่จะใช้ตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ มีโพสต์ค่อนข้างน้อยเกี่ยวกับเรื่องนี้และดูที่นี่ด้วย: ฉันสามารถบังคับให้ 'man' ทำการจับคู่ตัวพิมพ์เล็กและตัวพิมพ์เล็กได้หรือไม่ และนี่: กรณีตายค้นหาในหน้าคน ในความเป็นจริงถ้าคุณไม่รังเกียจฉันจะลบออกlessจากคำถามของคุณเนื่องจากครอบคลุมในโพสต์อื่นค่อนข้างมากและคำตอบที่คุณได้รับอธิบายวิธีทำใน vi
terdon

@terdon Fine โดยฉันแม้ว่าโปรดพิจารณาออกจากการสนทนาความคิดเห็นนี้ในขณะที่ฉันมักจะใช้ทั้งlessและviและข้อมูลที่มีค่า
Mike B

ในฐานะที่เป็นคำชี้แจงฉันใช้แน่นอนvim(แม้ว่าฉันจะพิมพ์vi) ขออภัยในความสับสน
Mike B

คำตอบ:


21

ในviหรือvimคุณสามารถละเว้นกรณีโดยและการค้นหาที่ตามมาทั้งหมดจะพิจารณาการตั้งค่าจนกว่าคุณจะตั้งค่าได้โดย:set ic :set noicในlessตัวเลือกมี-iและ-Iจะไม่สนใจกรณี


9
ฉันอยากจะแนะนำ:set smartcaseเพื่อให้ค้นหาตัวพิมพ์เล็กและตัวพิมพ์ใหญ่เมื่อใช้ตัวพิมพ์ใหญ่อย่างน้อย
แบร์นฮาร์ด

3
สำหรับบันทึกนั้นsmartcase เป็นเสียงเรียกเข้าเท่านั้น แต่ "vi" ของ OP น่าจะเป็นกลุ่มดังนั้นมันจึงคุ้มค่าที่จะพูดถึง / ลอง
Random832

@ Random832 Yup แก้ไข. Updated คำถามเดิมพูดถึงแทนvim vi
Mike B

27

ใช้\cลำดับ escape:

/foo\c

ดูเพิ่มเติมที่: /programming/2287440/how-to-do-case-insensitive-search-in-vim


7
ทราบว่านี้สามารถไปได้ทุกที่ในรูปแบบดังนั้นหากคุณตัดสินใจหลังจากที่เริ่มต้นกับประเภทที่คุณต้องการรูปแบบที่จะเป็นกรณีตายคุณก็สามารถเพิ่มทุกท่าน-เช่น\c /some_very_lo\cng_text
wchargin

2

ใน.vimrcไฟล์ของคุณได้แก่

set ignorecase

หรือ

set ic

:set ic!การเปิดใช้งานความไวกรณีการใช้งาน


1
Hi! สิ่งนี้ดูใช้ได้ แต่ไม่ได้เพิ่มคำตอบที่ยอมรับแล้วตอนนี้ใช่ไหม?
dhag

1
@dag คำตอบทั้งหมดให้วิธีที่แตกต่างในการบรรลุภารกิจเดียวกัน การตั้งค่าใน. vimrc อนุญาตให้การตั้งค่าคงอยู่สำหรับเซสชัน vim อื่น ๆ
todgru

@dhag คุณพูดถูกมันไม่ทำอะไรเลยที่จะแก้ไขปัญหาของ OP ได้น้อย
todgru
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.