Perl Array Grep () Funktion

Die Perl-Funktion grep () ist ein Filter, der einen regulären Ausdruck für jedes Element eines Arrays ausführt und nur die Elemente zurückgibt, die als ausgewertet werden wahr. Die Verwendung regulärer Ausdrücke kann äußerst leistungsfähig und komplex sein. Die grep () -Funktionen verwenden die Syntax @List = grep (Expression, @array).

Verwenden der Grep () - Funktion, um wahre Ausdrücke zurückzugeben

@myNames = ("Jacob", "Michael", "Joshua", "Mathew", "Alexander", "Andrew");
@grepNames = grep (/ ^ A /, @myNames);

Stellen Sie sich das @ myNames-Array als eine Reihe von nummerierten Feldern vor, die von links nach rechts und beginnend mit einer Null nummeriert sind. Die Funktion grep () durchläuft jedes der Elemente (Kästchen) im Array und vergleicht deren Inhalt mit dem regulären Ausdruck. Wenn das Ergebnis ist wahr, Der Inhalt wird dann zum neuen Array @grepNames hinzugefügt.

Im obigen Beispiel sucht der reguläre Ausdruck / ^ A / nach einem Wert, der mit einem Großbuchstaben A beginnt. Nach dem Durchsuchen des Inhalts des Arrays @myNames wird der Wert von @grepNames ('Alexander', 'Andrew'). , die einzigen zwei Elemente, die mit einem Großbuchstaben A beginnen.

Umkehren des Ausdrucks in einer Grep () - Funktion

Eine schnelle Möglichkeit, diese bestimmte Funktion leistungsfähiger zu machen, besteht darin, den regulären Ausdruck mit dem Operator NOT umzukehren. Der reguläre Ausdruck sucht dann nach Elementen, die ausgewertet werden falsch und verschiebt sie in das neue Array.

@myNames = ("Jacob", "Michael", "Joshua", "Mathew", "Alexander", "Andrew");
@grepNames = grep (! / ^ A /, @myNames);

Im obigen Beispiel sucht der reguläre Ausdruck nach einem Wert, der nicht mit einem Großbuchstaben A beginnt. Nach dem Durchsuchen des Inhalts des Arrays @myNames wird der Wert von @grepNames ('Jacob', 'Michael', 'Joshua') ', 'Matthew').

Über Perl

Perl ist eine anpassbare Programmiersprache, die häufig zur Entwicklung von Webanwendungen verwendet wird. Perl ist eine interpretierte, nicht kompilierte Sprache, daher benötigen ihre Programme mehr CPU-Zeit als eine kompilierte Sprache - ein Problem, das mit zunehmender Prozessorgeschwindigkeit an Bedeutung verliert. Das Schreiben in Perl ist jedoch schneller als das Schreiben in einer kompilierten Sprache. Sie sparen also Zeit.