Bagaimana Anda memahami baris yang hanya berisi 5 atau 6 angka? Sesuatu seperti ini.
kasus 1 (memiliki spasi awal)
10 2 12 1 13
kasus 2 (tanpa spasi)
1 2 3 4 5 6
Saya pikir sesuatu seperti ini akan berhasil.
grep -E '[0-9]{5}'
Jawaban yang Diterima:
grep -E '[0-9]{5}'
sedang mencari angka dengan minimal 5 digit. Yang Anda butuhkan adalah 5 angka dengan setidaknya satu digit:
grep -E '[0-9]+([^0-9]+[0-9]+){4}'
[0-9]+
– sejumlah minimal satu digit[^0-9]+[0-9]+
– angka dengan setidaknya satu digit, didahului oleh setidaknya satu karakter non-digit. Kami kemudian mengulangi ini 4 kali untuk mendapatkan 5 angka yang dipisahkan oleh non-digit.- Jika persyaratannya tepat 5, Anda mungkin ingin mengapit regex ini dengan
[^0-9]
sehingga seluruh baris cocok (dengan jangkar, tentu saja). - Tergantung pada apa yang Anda inginkan di sini (tidak
1,2,3,4,6
memenuhi syarat?), Anda dapat melihat pemisah lainnya. Misalnya, notasi ilmiah bilangan real yang tepat akan terlihat seperti:[+-]?(([0-9]+(.[0-9]+)?)|([0-9]?.[0-9]+))([eE][+-][0-9]+)?
Jadi pemisah tidak boleh menyertakan.
,e
, dll. Mereka hanya boleh berupa spasi putih, sepertimikeserv
catatan. Atau mungkin koma, jika itu adalah data CSV. Atau tergantung pada lokal, koma akan menjadi pemisah desimal. Variasikan[^0-9]
sesuai kebutuhan Anda.
Bagaimana Menekan Pesan Dari Program Saat Menginstalnya Untuk Digunakan Dalam Program Bash??
Mengapa Lsdel Di Debugfs Tidak Berfungsi?