Bagaimana cara memasukkan baris baru dalam pencarian dalam waktu kurang?


16

Bagaimana saya bisa mencari baris baru (atau akhir baris) sebagai bagian dari pencarian menggunakan lebih sedikit?

Misalnya, saya ingin mencari length=9\n, tetapi tidak ingin hanya mencari length==9karena itu akan cocok length=90\n.

Saya menggunakan GNU bash, versi 4.0.33 (1) -release (x86_64-pc-linux-gnu) di Ubuntu 9.10 (Karmic Koala)

Saya mencoba membaca manual yang ramah, tetapi katanya

/pattern

Cari maju dalam file untuk baris ke-N yang berisi pola. N default ke 1. Pola adalah ekspresi reguler, seperti yang dikenali oleh pustaka ekspresi reguler yang disediakan oleh sistem Anda. Pencarian dimulai pada baris kedua yang ditampilkan (tetapi lihat opsi -a dan -j, yang mengubah ini).

dan saya tidak tahu bagaimana cara RTFM lebih dari itu.


1
Anda mungkin juga menemukan pencarian yang dipusatkan pada batas kata agar bermanfaat. /\<length=9\>akan menemukan "length = 9" di mana saja pada suatu garis tanpa mencocokkan "length = 90" atau "stringlength = 9". Lihat man 7 regexdan man grepuntuk lebih banyak.
Dijeda sampai pemberitahuan lebih lanjut.

1
Bagi mereka yang mencari jawaban untuk judul pertanyaan: Saya tidak percaya Anda dapat memasukkan baris baru dalam pencarian dalam waktu kurang. Ini berarti bahwa pencarian multiline dalam waktu kurang tampaknya tidak mungkin dilakukan.
drevicko

Jawaban:


11

Anda dapat melakukan:

/pattern$

Mengganti pola pattern, tetapi $harus tetap, itu memberitahu pencarian untuk mencari pola, dan kemudian akhir baris.

Jadi, Anda akan melakukannya:

/length=9$
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.