Як менше включати нові рядки в пошук?


16

Як я можу шукати нові рядки (або в кінці рядків) у рамках пошуку, використовуючи менше?

Наприклад, я хотів би шукати length=9\n, але не хочу просто шукати, length==9тому що це отримає збіги length=90\n.

Я використовую GNU bash, версія 4.0.33 (1) -випуск (x86_64-pc-linux-gnu) на Ubuntu 9.10 (Karmic Koala)

Я спробував прочитати дружній посібник, але він сказав

/pattern

Шукайте вперед у файлі N-го рядка, що містить візерунок. N за замовчуванням до 1. Шаблон - це регулярний вираз, визнаний бібліотекою регулярних виразів, наданою вашою системою. Пошук починається у другому рядку, що відображається (але див. Параметри -a та -j, які це змінюють).

і я не знаю, як RTFM поза цим.


1
Також вам можуть бути корисні пошукові запити на кордонах слів. /\<length=9\>Ви знайдете "length = 9", що знаходиться в будь-якій точці рядка без відповідності "length = 90" або "stringlength = 9". Дивіться man 7 regexта man grepбільше.
Призупинено до подальшого повідомлення.

1
Для тих, хто шукає відповідь на назву питання: Я не вірю, що ви можете включити нові рядки в пошук менше. Це означає, що багаторядкові пошуки в меншій кількості не здаються можливими.
drevicko

Відповіді:


11

Ви можете зробити:

/pattern$

Шаблон, що замінює pattern, але $повинен залишатися, вказує на пошук шукати шаблон, а потім кінець рядка.

Отже, ви зробите:

/length=9$
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.