Java Matcher -klasse

Java Matcher -klasse
Hvis du ikke er ny på programmering, kan du ha en ide om strengmatching eller søke ved å bruke et spesifisert mønster via variablene. Det har blitt mye brukt blant utviklere mens de jobbet på en plattform. I Java er det en matcherklasse som jobber tett med mønsterklassen for å søke etter et spesifikt mønster fra strengvariabelen og vises hvis den ble matchet eller ikke. Matcher -klassen er implementert av "MatchResult" -grensesnittet som har vært medlem av Java Regex -pakken, I.e., Java.util.regex. Med andre ord, denne klassen manipulerer vanlige uttrykk og bruker forskjellige funksjoner for dem. I denne guiden vil vi diskutere bruken av Matcher -klassen sammen med mønsterklassen til Regex -pakken.

Eksempel 01

La oss få vår første forekomst av Java for å få en klar forståelse av matcherklassen til Java. For det må du bygge en ny Java -fil i miljøet ditt, jeg.e., Eclipse Ide i vår sak. Vi kalte det “Main.Java ”, som vist på bildet også. Når vi har opprettet en fil, nevnes prosjektnavnet av verktøyet automatisk med søkeordpakken. Nå som vi trenger å bruke matcher- og mønsterklassene i Java -eksemplet, bør vi importere begge deler. Du kan kaste av begge ved hjelp av nøkkelordet "Import" fra Java.util.Regex -pakke.

Nå som begge klassene er importert her, er det på tide å lage en ny brukerdefinert klasse som skal bruke både matcher og mønsterklasse. Vi navngir denne klassen som "Main", jeg.e., det samme som et Java -filnavn. Det er på tide å bruke en Main () -funksjon i denne klassen som vil være ansvarlig for hele programbehandlingen. Derfor ble hovedfunksjonen () definert med initialiseringen av objekter for mønster- og matcherklassene. Objektet “P” ble initialisert for mønsterklassen sammen med funksjonsanropet til dens kompileringsmetode som brukes til å definere et mønster som skal matches. Den første parameteren for kompileringsfunksjonen () vil definere et mønster som skal søkes, mens den andre parameteren vil definere tilfellet ufølsomhet for et definert mønster, i.e., sak følsom eller ufølsom.

Nå som vi har erklært et mønster, er det på tide å legge til et objekt for en matcher -klasse. Vi bruker totalt 2 objekter, M1 og M2, for Matcher -klassen her, ved å bruke “P” -objektet for å kalle Matcher () -funksjonen for å erklære en matcherstreng for å matche mønster “P” med den. Ettersom objektene M1 og M2 får resultatene fra Matcher () -funksjonen, er det på tide å få resultatene fra begge objektene ved å bruke Find () -funksjonen til Java som vil returnere en boolsk verdi, i.e., sant eller usant.

Så vi har kalt Find () -funksjonen ved å bruke First Matcher Class -objektet M1 og lagre den verdien til en boolsk variabel F1. "Hvis" Java -uttalelsen ble brukt her for å teste om den returnerte verdien F1 er sann eller ikke. Hvis det er sant, vil println () -funksjonen vise at mønsteret ble matchet med den spesifiserte matcheren; Ellers vil den andre delen av denne Java -uttalelsen sende ut det motsatte. Det samme ble gjentatt for det andre objektet, M2, og resultatene ble vist deretter.

Når du kjører ovennevnte Java-kode, vil du sannsynligvis få de presenterte resultatene nedenfor. Resultatet av den første "hvis" uttalelsen sier at mønsteret har blitt matchet, mens resultatet av den andre "hvis" -uttalelsen viser nøyaktig det motsatte.

Eksempel 02

Det er på tide å se et annet eksempel på Java som vil utdype bruken av Matcher -klassen for å matche det spesifikke mønsteret med den spesifiserte strengverdien. Så vi kommer til å definere det intrikate arrangementet av vår Java -kode. Regex -pakken med Java ble importert her med hele sine klasser og grensesnitt. Etter dette ble hovedklassen definert for å starte programmets utførelse av løping.

Nå som hoved- () -funksjonen er startet, er det på tide å definere strengvariablene av den endelige statiske typen sammen med de private tilgangsmodifikatorene, i.e., De kan bare nås i klassen der de er definert. Bruken av statisk og endelig med disse variable erklæringer vil gjøre dem stive og ikke i stand til å bli oppdatert når som helst i koden. Regex -variabelen viser den vanlige ekspresjonsstrengen som kommer til å bli matchet. Mens inngangsvariabelen viser inngangsstrengen for inngangen som brukes til å matche mønsteret.

Nå har vi begge mønstrene, jeg.e., å bli matchet og mønsteret for å være en matcher. Det er på høy tid å definere Main () -funksjonen i denne koden for å utføre hele koden ved å kjøre den med Eclipse IDE Run -ikonet som holdes på oppgavelinjen. Etter Main () funksjonsgenerasjonen er det nødvendig å lage objekter for mønsteret og matcher -klassen. Så bruken av mønster og matcher -klasse er tydelig fra linjer 7 og 8. Objektet “P” er definert for mønsterklassen, og objektet “M” er definert for Matcher -klassen.

I mønsterklassens kompileringsfunksjon får vi "regex" -variabelen. Mens matcher -klassens matcherfunksjon kaster av inngangsvariabelen. Ved de to første uttalelsene fra Println (). 11th Line vil bruke println () -funksjonen til å søke hvis matcher “M” ser på mønsteret “P” ved hjelp av LookingAt () -metoden. Til slutt ble matches () -funksjonen til Matcher -klassen kalt til å vises hvis mønsteret “P” ble matchet med matcher “M”.

Slik ser utdataene ut, jeg.e., det presenterte bildet. Slutten på denne utgangen viser at regex- og inngangsvariablene ble matchet.

Konklusjon

På slutten av denne guiden er vi sikre på at du vil kunne lage Java -eksemplene dine for Matcher -klassen for å matche et spesifikt mønster med en rekke tegn. Innledningen handler om viktigheten og bruken av matcherklassen sammen med mønsterklassen i Java. Mens eksemplene er skildringene av hvordan disse to klassene kan brukes til å få de boolske resultatene i henhold til mønstrene vi ga i kodene.