Perl String sammenligning

Perl String sammenligning

“Det finnes mange alternativer i Perl for å sammenligne strengverdier. En måte er å bruke “CMP”Operatør, og en annen måte er å bruke sammenligningsoperatører, som er “Eq,” “ne,” “lt.”Og“ GT.”==”Operatør brukes bare til antall sammenligninger i Perl. Ulike måter å sammenligne to strenger i Perl har blitt vist i denne opplæringen.”

Sammenlign strenger ved å bruke "CMP" -operatøren

"CMP" -operatøren brukes til å sammenligne to strenger og finne ut om den første er mindre enn eller lik, eller større enn den andre strengen. Opprett en Perl -fil med følgende kode for å kjenne bruken av "CMP" -operatøren i Perl. To strengverdier vil bli tatt fra brukeren for sammenligningen. Chomp () -funksjonen har blitt brukt i koden for å fjerne den nye linjen fra begge strengverdiene tatt fra brukeren. Deretter vil utdataene fra "CMP" -operatøren bli lagret i en variabel. Returverdien til "CMP" -operatøren vil være 0 hvis begge strengene er like. Returverdien til "CMP" -operatøren vil være 1 hvis den første strengen er større enn den andre strengen. Returverdien til "CMP" -operatøren vil være -1 hvis den første strengen er mindre enn den andre strengen.

# Ta to strengverdier
Skriv ut "Skriv inn den første strengen:";
$ Str1 = ;
Skriv ut "Skriv inn den andre strengen:";
$ Str2 = ;
# Fjern Newline fra hver strengvariabel
chomp ($ str1, $ str2);
# Sammenlign strengvariablene ved å bruke 'CMP' -operatøren
$ output = $ str1 cmp $ str2;
# Kontroller utdataene fra 'CMP' -operatøren
if ($ output == 0)

utskrift "Begge strengene er like.\ n ";

Elsif ($ output == 1)

Print "$ str1 er større enn $ str2 \ n";

ellers

Skriv ut "$ str1 er mindre enn $ str2 \ n";

Produksjon

I henhold til følgende utdata er koden blitt utført tre ganger. Den første inngangsverdien var “Hallo,”Og den andre inngangsverdien var“Hallo”I den første utførelsen av koden. Karakteren "h”Er større enn karakteren”H”Basert på ASCII -verdien til disse karakterene. Så, “Hei er større enn hei”Er blitt skrevet ut i den første utgangen. Av samme grunn, "Hei er mindre enn hei”Har vært i den andre utgangen. Både “Hei” og “Hei” er like som er tatt i den tredje utførelsen av koden. Så, “Begge strengene er like.”Er blitt skrevet ut i den tredje utgangen.

Sammenlign strenger ved å bruke "EQ" -operatøren

Eq”Operatør brukes i perl for å finne ut om to strengverdier er like eller ikke. Opprett en Perl -fil med følgende kode for å vite bruken av “Eq”Operatør for å sammenligne strengverdier. To strengverdier er lagret i to variabler. Det første ordet i begge strengverdiene er like, og det er "Flink,”Men den andre delen av strengverdiene er ikke lik. Så "Eq”Operatøren vil returnere en falsk verdi.

# Erklære to strengvariabler
$ Str1 = "god morgen";
$ Str2 = "farvel";
# Sammenlign strengene ved å bruke 'EQ' operatør
if ($ str1 Eq $ str2)

utskrift "Begge strengene er like.\ n ";

ellers

Skriv ut "Strengene er ikke like.\ n ";

Produksjon

Følgende utgang vises etter å ha utført koden ovenfor.

Sammenlign strenger ved å bruke "NE" -operatøren

ne”Operatør brukes i Perl for å finne ut om to strengverdier ikke er like eller ikke. Opprett en Perl -fil med følgende kode for å vite bruken av “ne”Operatør for å sammenligne strengverdier. To strengverdier er lagret i to variabler. De første 4 tegnene i begge strengverdiene er like, og det er "Flink,”Men den andre delen av strengverdiene er ikke lik. Her, The substr () -funksjon har blitt brukt til å kutte de 4 første tegnene fra begge strengverdiene, og neste har verdiene blitt sammenlignet med "NE" -operatøren. Så "ne”Operatøren vil returnere en falsk verdi.

# Erklære to strengvariabler
$ Str1 = "god morgen";
$ Str2 = "farvel";
# Sammenlign den spesielle delen av strengene ved å bruke 'NE' operatør
if (substr ($ str1,0,4) ne substr ($ str2,0,4)))

Skriv ut "De første 4 tegnene på begge strengene er ikke like.\ n ";

ellers

Skriv ut "De første 4 tegnene på begge strengene er like.\ n ";

Produksjon

Følgende utgang vises etter å ha utført koden ovenfor.

Sammenlign strenger ved å bruke "LT" -operatøren

Lt”Operatør brukes i Perl for å finne ut om den første strengen er mindre enn den andre strengen eller ikke. Opprett en Perl -fil med følgende kode for å vite bruken av “Lt”Operatør for å sammenligne strengverdier. Her, The substr () Funksjon har blitt brukt til å kutte karakterene fra posisjon 5 til den gjenværende delen av begge strengene. Deretter er verdiene blitt sammenlignet med "Lt”Operatør. Her, karakteren “M”Er større enn karakteren”B”Basert på ASCII -verdien. Så "Lt”Operatøren vil returnere en falsk verdi.

# Erklære to strengvariabler
$ Str1 = "god morgen";
$ Str2 = "farvel";
# Sammenlign den spesielle delen av strengene ved å bruke 'LT' operatør
if (substr ($ str1,5) lt substr ($ str2,5))

Skriv ut "$ str1 er mindre enn $ str2 \ n";

ellers

Print "$ str1 er større enn $ str2 \ n";

Produksjon

Følgende utgang vises etter å ha utført koden ovenfor.

Sammenlign strenger ved å bruke "GT" -operatøren

gt”Operatør brukes i Perl for å finne ut om den første strengen er større enn den andre strengen eller ikke. Opprett en Perl -fil med følgende kode for å vite bruken av “gt”Operatør for å sammenligne strengverdier. To strengverdier vil bli hentet fra brukeren. De chomp () funksjon har blitt brukt her for å fjerne den nye linjen fra inngangsverdiene før du sammenligner verdiene ved å bruke "gt”Operatør.

# Ta to strengverdier
Skriv ut "Skriv inn den første strengen:";
$ Str1 =;
Skriv ut "Skriv inn den andre strengen:";
$ Str2 =;
# Sammenlign strengene ved å bruke 'GT' operatør
if (chomp ($ str1) gt chomp ($ str2))

Print "$ str1 er større enn $ str2 \ n";

ellers

Skriv ut "$ str1 er mindre enn $ str2 \ n";

Produksjon

Følgende utgang vises etter å ha utført ovennevnte kode for inngangsverdiene, “Hello World” og “Hello World.”

Konklusjon

Ulike måter å sammenligne strengverdier i Perl har blitt vist i denne opplæringen ved å bruke flere sammenligningsoperatører. Perl -brukerne kan bruke noen av sammenligningsoperatørene for å sammenligne strengverdiene i Perl.