Perl Array Funkcja Grep()
Używanie funkcji Array Grep() do filtrowania elementów tablicy
Aping Vision/STS/Photodisc/Getty Images
Funkcja grep() Perl jest filtrem, który uruchamia wyrażenie regularne na każdym elemencie tablicy i zwraca tylko te elementy, które są oceniane jako PRAWDA . Używanie wyrażeń regularnych może być niezwykle potężne i złożone. Funkcje grep() używają składni @List = grep(Expression, @array).
Używanie funkcji Grep() do zwracania prawdziwych wyrażeń
|_+_| |_+_|Pomyśl o tablicy @myNames jako rzędzie ponumerowanych pól, od lewej do prawej i ponumerowanych od zera. Funkcja grep() przechodzi przez każdy z elementów (pól) w tablicy i porównuje ich zawartość z wyrażeniem regularnym. Jeśli wynik to PRAWDA , zawartość jest następnie dodawana do nowej tablicy @grepNames.
W powyższym przykładzie wyrażenie regularne /^A/ szuka dowolnej wartości, która zaczyna się od dużej litery A. Po przesianiu zawartości tablicy @myNames, wartość @grepNames staje się ('Alexander', 'Andrew') , jedyne dwa elementy, które zaczynają się od dużej litery A.
Odwracanie wyrażenia w funkcji Grep()
Jednym z szybkich sposobów na zwiększenie wydajności tej konkretnej funkcji jest odwrócenie wyrażenia regularnego za pomocą operatora NOT. Wyrażenie regularne szuka następnie elementów, których wynikiem jest fałszywy i przenosi je do nowej tablicy.
|_+_| |_+_|
W powyższym przykładzie wyrażenie regularne szuka dowolnej wartości, która nie zaczyna się od dużej litery A. Po przesianiu zawartości tablicy @myNames, wartość @grepNames staje się ('Jacob', 'Michael', 'Joshua ', 'Mateusz').
O Perlu
Perlto adaptowalny język programowania często używany do tworzenia aplikacji internetowych. Perl jest językiem interpretowanym, a nie kompilowanym, więc jego programy zajmują więcej czasu procesora niż język skompilowany — problem, który staje się mniej istotny wraz ze wzrostem szybkości procesorów. Jednak pisanie w Perlu jest szybsze niż pisanie w języku skompilowanym, więc zaoszczędzony czas należy do Ciebie.