Kā lietot Regex atstarpi Java

Ka Lietot Regex Atstarpi Java



Regulārā izteiksme jeb regulārā izteiksme ir speciālo rakstzīmju kopa, kas apvienojas, veidojot paraugu, lai meklētu rakstzīmes virknēs. Datorprogrammēšanā un programmatūras inženierijā regulārās izteiksmes apguve būs ļoti noderīga, lai atrastu informāciju jebkurā tekstā. Visu veidu teksta meklēšanas, formatēšanas un teksta aizstāšanas darbības var veikt, izmantojot regulārās izteiksmes.

Šī apmācība palīdzēs jums izmantot regex atstarpi Java.







Kas ir Regex Java?

Regulārā izteiksme vai regulārā izteiksme var būt tikpat vienkārša kā viena rakstzīme vai sarežģīts raksts. To var izveidot ar teksta un simbolu virkni noteiktā secībā. Lielākā daļa regulārā izteiksmes rakstzīmju ir burti un tipogrāfiski simboli. Regex ir reģistrjutīgs, tāpēc paturiet to prātā, veidojot un izmantojot to.



Kā lietot Regex atstarpi Java?

Lai gan Java nav iepriekš definētas regulārās izteiksmes klases. Tomēr mēs varam izmantot regulāras izteiksmes, importējot “ java.util.regex ” bibliotēka. Tas ietver dažas klases, piemēram, ' Raksts ”, ko izmanto regulārā izteiksmes modeļa definēšanai, un Sērkociņi ” klase, kas tiek izmantota, lai meklētu ar modeli.



Ir divas metodes, kā lietot regex atstarpi Java:





    • Metodes Pattern.matches() izmantošana (izmantojiet iepriekš definētu regulāro izteiksmi)
    • Modeļa un atbilstības klases izmantošana (izveidojiet lietotāja definētu regulāro izteiksmi, lai atbilstu)

Apskatīsim, kā šīs metodes darbosies ar regulāru izteiksmi atstarpēm Java.

1. metode: izmantojiet iepriekš definētu Regex atstarpi ar Pattern.matches() metodi Java

Lai virknē atrastu atstarpes, Java ir trīs izplatīti regexes:



    • \s : tas apzīmē vienu baltu atstarpi.
    • \s+ : norāda vairākas baltas atstarpes.
    • \u0020 : tas ir atstarpes unikods, ko izmanto kā regulāro izteiksmi, lai tekstā atrastu atstarpes.

Mēs varam izmantot šos regexus statiskajā metodē ' atbilst() ' no ' Raksts ” klase. Modeļu klase pieder pie “ java.util.regex ” iepakojums. Tālāk ir norādīta metodes Pattern.matches() sintakse:

Sintakse

Raksts.sērkociņi ( '\s' , ' ' ) ;


Norādītajai metodei ir nepieciešami divi argumenti: regulārā izteiksme un atbilstības virkne. Pirmais arguments “\s” ir atstarpes regulārā izteiksme vai regulārā izteiksme, bet otrais arguments '' ir telpa virknē. Tas atgriež patiesu vai nepatiesu kā Būla vērtību.

1. piemērs. Izmantojiet “\s” WhiteSpace Regex

Šeit mēs izmantosim ' \s ” regulārais izteiksmes veids Pattern.matches() metodē. Mēs nodosim virkni bez atstarpes metodē kā otro argumentu. Metode pārbaudīs regulāro izteiksmi un virkni un pēc tam atgriezīs Būla vērtību, kas tiks saglabāta atbilst ” mainīgais:

Būla atbilst = Pattern.matches ( '\s' , '' ) ;


Izdrukājiet atbilstošā mainīgā vērtību, izmantojot ' System.out.println() ” metode:

System.out.println ( 'Kosmoss pastāv:' + mačs ) ;



Vērtība, ko atgriež “ Pattern.matches() 'metode ir' viltus ”, jo nodotajā virknē nav atstarpes:


Tagad mēs redzēsim dažus citus piemērus, lai saskaņotu atstarpes ar citiem regexes.

2. piemērs. Izmantojiet “\s+” WhiteSpace Regex

Šajā piemērā mēs nodosim “ \s+ 'regulārais izteiksmes veids ' atbilst() ” metode, lai atrastu vairākas atstarpes:

Būla atbilst = Pattern.matches ( '\s+' , ' ' ) ;


Izdrukājiet atbilstības mainīgā vērtību, kas saglabā atgriezto rezultātu no metodes:

System.out.println ( 'Kosmoss pastāv:' + mačs ) ;



Tā kā otrajā argumentā ir atstarpes, iegūtā vērtība tiek parādīta kā ' taisnība ”:

3. piemērs. Izmantojiet “\u0020” WhiteSpace Regex

Šeit mēs parādīsim, kā Unicode tiek izmantots kā regulārais izteiksme Java. Norādītajam mērķim mēs izmantosim ' \u0020 ” regex kā baltās atstarpes unikods:

Būla atbilst = Pattern.matches ( '\u0020' , ' ' ) ;


Drukāt atgriezto vērtību:

System.out.println ( 'Kosmoss pastāv:' + mačs ) ;



Metode Pattern.matches() izdrukās ' taisnība ” kā nodota virkne, kurā ir atstarpes:


Pārejam pie citas metodes, lai izmantotu regex Java.

2. metode: izmantojiet lietotāja definētu Regex atstarpi ar modeli un atbilstības klasi

' Raksts 'klase tiek izmantota, lai definētu vai izveidotu modeli, savukārt ' Sērkociņi ” klase tiek izmantota, lai meklētu pēc dotā modeļa. Regulārā izteiksmes modeli var izveidot, izmantojot “ sastādīt() ” klases Pattern metode. Tam nepieciešams tikai viens parametrs, modelis, kuru vēlaties apkopot jebkuram mērķim.

Sintakse

Pattern.compil ( ' \t \p{Zs}' ) ;


The Sērkociņi klase atbilst modelim, izmantojot ' atbilst() ” metode. Tas aizņem ' stīga ” kā paraugs.

Sintakse

modelisMainīgs.atskaņotājs ( stīga ) ;


Ir daži iepriekš definēti atstarpju regulārā izteiksme, par kuriem mēs runājām iepriekš, pārējie ir norādīti tālāk:

    • \\t\\p{Zs}
    • \\p{Zs}

Tagad apskatīsim dažus piemērus.

1. piemērs: izmantojiet “\\t\\p{Zs}” WhiteSpace Regex

Šajā piemērā mēs uzzināsim atstarpju skaitu, tos saskaitot. Pirmkārt, mēs izveidosim virkni ' s ” un izdrukājiet to konsolē:

Virkne s = 'WelcometoLinuxHint' ;
System.out.println ( s ) ;


Tālāk mēs definēsim modeli ' \\t\\p{Zs} ', kas Java darbojas kā atstarpes regulārais izteiksmes veids un ir vienāds ar ' \s ”. Pēc dotā modeļa sastādīšanas mainīgais ' regexPattern ” saturēs iegūto vērtību:

Pattern regexPattern = Pattern.compile ( '\ \t \\p{Zs}' ) ;


Zvaniet uz ' atbilst() 'metode un caurlaide' s 'Augsta:

Atbilstošā virkneSpaces = regexPattern.matcher ( s ) ;


Izveidojiet vesela skaitļa tipa mainīgo ' skaitīt un inicializējiet to ar vērtību ' 0 ”:

int skaits = 0 ;


Saskaitiet virknē esošo atstarpju skaitu, izmantojot ' kamēr ” cilpa. Cilpa šķērsos virkni un palielinās skaitīšanas mainīgā vērtību, ja tā saskarsies ar atstarpi:

kamēr ( stringSpaces.find ( ) ) {
skaitīt++;
}


Visbeidzot, izdrukājiet skaitīšanas vērtību, lai parādītu, cik atstarpju ir atrasts virknē:

System.out.println ( 'String satur' +skaits+ 'atstarpes' ) ;


Izvade



2. piemērs. Izmantojiet “\p{Zs}” WhiteSpace Regex

Tagad mēs atradīsim atstarpes virknē, izmantojot citu modeli ' \p{Zs} ”. Šis modelis darbojas līdzīgi kā ' \s ' un ' \s+ ” regex:

Pattern regexPattern = Pattern.compile ( '\\p{Zs}' ) ;


Tagad mēs saucam ' atbilst() 'metode un caurlaide' s ” Virkne kā arguments:

Atbilstošā virkneSpaces = regexPattern.matcher ( s ) ;


Tāpat kā iepriekš minētajā piemērā, mēs izmantojam arī ' kamēr ” cilpa, lai saskaitītu atstarpes virknē un izdrukātu tās:



Dotā izvade norāda, ka mūsu virkne ' Laipni lūdzam pakalpojumā Linux Hint ” satur trīs atstarpes:



Mēs apkopojam visas vienkāršākās metodes, kas var palīdzēt jums izmantot regulāro atstarpi Java.

Secinājums

Atstarpei ir daudz regulāru izteiksmju, piemēram, ' \s ”, “ \s+ ”, “ \u0020 ”, “ \\t\\p{Zs} ', un ' \\p{Zs} ”. Šie regexes tiek izmantoti klases Pattern metodē matches() vai definējot modeli ar Pattern Class un saskaņojot to, izmantojot klasi Matcher. Visbiežāk lietotā regulārā izteiksmes atstarpes ir \s un \s+. Šajā apmācībā mēs apskatījām visas metodes, kā izmantot regulāro atstarpi Java.