Fungsi Perl grep () adalah filter yang menjalankan ekspresi reguler pada setiap elemen array dan hanya mengembalikan elemen yang dievaluasi sebagai benar. Menggunakan ekspresi reguler bisa sangat kuat dan kompleks. Fungsi grep () menggunakan sintaks @List = grep (Ekspresi, @array).
Menggunakan Fungsi Grep () untuk Mengembalikan Ekspresi Benar
@myNames = ('Yakub', 'Michael', 'Joshua', 'Mathew', 'Alexander', 'Andrew');
@grepNames = grep (/ ^ A /, @myNames);
Pikirkan array @myNames sebagai deretan kotak bernomor, pergi dari kiri ke kanan dan dinomori mulai dengan nol. Fungsi grep () melewati setiap elemen (kotak) dalam array dan membandingkan isinya dengan ekspresi reguler. Jika hasilnya benar, konten kemudian ditambahkan ke array @grepNames baru.
Dalam contoh di atas, ekspresi reguler / ^ A / mencari nilai apa pun yang dimulai dengan huruf kapital A. Setelah memilah-milah isi array @myNames, nilai @grepNames menjadi ('Alexander', 'Andrew'), satu-satunya dua elemen yang dimulai dengan huruf kapital A.
Membalikkan Ekspresi dalam Fungsi Grep ()
Salah satu cara cepat untuk membuat fungsi khusus ini lebih kuat adalah membalikkan ekspresi reguler dengan operator NOT. Ekspresi reguler kemudian mencari elemen yang dievaluasi Salah dan memindahkannya ke array baru.
@myNames = ('Yakub', 'Michael', 'Joshua', 'Mathew', 'Alexander', 'Andrew');
@grepNames = grep (! / ^ A /, @myNames);
Dalam contoh di atas, ekspresi reguler mencari nilai apa pun yang tidak dimulai dengan huruf kapital A. Setelah memilah-milah isi array @myNames, nilai @grepNames menjadi ('Yakub', 'Michael', 'Joshua', 'Matius').
Tentang Perl
Perl adalah bahasa pemrograman yang mudah beradaptasi yang sering digunakan untuk mengembangkan aplikasi web. Perl adalah bahasa yang ditafsirkan, bukan dikompilasi, sehingga program-programnya membutuhkan lebih banyak waktu CPU daripada bahasa yang dikompilasi — masalah yang menjadi kurang penting ketika kecepatan prosesor meningkat. Namun, menulis dalam Perl lebih cepat daripada menulis dalam bahasa yang dikompilasi, jadi waktu yang Anda hemat adalah milik Anda.