Mis on Java tavalised avaldised?

Java , Regex või Regular Expression on rakendusprogrammiliides, mis aitab mustri määratlemisel stringe otsida, käsitseda ja redigeerida. Java regulaaravaldisi kasutatakse paroolide ja meilide valideerimisel laialdaselt. Neid avaldisi pakub pakett java.util.regex ja need koosnevad ühest liidesest ja 3 klassist.

Kolm klassi on:

  1. Muster: aitab mustrite määratlemisel.
  2. Matcher: mustrite kasutamine aitab matšoperatsioonide teostamisel.
  3. PatternSyntaxException: aitab süntaksivigu näidata.

Java Regexil on üks liides, mida tuntakse nimega MatchResultInterface, mis aitab kindlaks teha regulaaravaldise vasteoperatsiooni tulemust.

Regulaaravaldise süntaks Java-s

Nüüd vaatame, kuidas kirjutada Java abil tavalist avaldist programmi abil.

Kood:

//Java program to demonstrate regular expressions
import java.util.regex.*;
public class RegExamples (
public static void main(String args())(
String A = " Happiness is " + " within yourself";
String B = ".*within.*";
// checks whether the string A contains the word 'within' and stores the result in matchcheck
boolean matchcheck = Pattern.matches(B, A);
//prints the result
System.out.println("Is there any string 'within' in the text ? \n " + matchcheck);
) )

Väljund:

Tavaliselt kasutatavad meetodid regulaaravaldistes

Regulaarlausetes on 3 tavaliselt kasutatavat meetodit. Nemad on,

1. Indeksimeetodid

Indeksimeetodid pakuvad indeksiväärtusi, mis aitavad täpselt näidata, kus vaste leiti sisendina antud stringist.

Meetod Kirjeldus
algus ()Eelmise matši algusindeks tagastatakse.
algus (siserühm)Arvestades rühma eelmist matšioperatsiooni, võetakse järjestus tagasi ja tagastatakse.
lõpp()Pärast viimase tähe sobitamist tagastatakse nihke.
Lõpp (siserühm)Arvestades grupi eelmist matšioperatsiooni, jäädvustatakse ja tasakaalustatakse järjestus pärast tema viimase tähemärgi tagastamist.

2. Õppemeetodid

Õppemeetodid kontrollivad sisendina antud stringi ja tagastatakse tõeväärtus, mis näitab, kas muster leitakse või mitte.

Meetod Kirjeldus
Vaatan()Sobitage sisendina antud järjestus piirkonna alguse mustriga.
leid ()Leiab sisendina antud järjestuse järgmise järjestuse piirkonna alguse mustri alusel.
leidma (algus)Lähtestab sobitaja ja leiab siis järgneva järjestuse, mis on antud sisendina määratud mustri alusel määratud indeksist.
tikud()Sobitab sisu mustriga.

3. Asendusmeetodid

Meetodid, mida kasutatakse stringi teksti asendamiseks.

Meetod Kirjeldus
appendReplacement (StringBuffer s, String asendamine)Rakendatakse mitteterminaline lisamise ja asendamise samm.
appendTail (StringBuffer s)Rakendatakse terminali lisamine ja asendamise samm.
Asenda kõik (Stringi asendamine)Asendage sisendina antud järjestuse kogu järjestus, mis sobib mustriga, asendusstringiga.
quoteReplacement (stringid)Mainitud stringi jaoks tagastatakse sõnasõnaline asendustring.
replaFirst (stringi asendamine)Asendage sisendina antud järjestuse esimene järjestus, mis sobib mustriga asendusstringiga.

Kuidas Java-s regulaaravaldist defineerida?

Regulaarväljendit saab defineerida mitmel viisil. Nemad on:

1. Kirjandus

Oletame, et stringi „hai” tuleb otsida tekstist „hai”. Seda saab teha süntaksi abil.

Pattern.matches("hai", "hai")

2. Tegelasklassid

See sobib teksti sisendina sisestatud tähemärkidega märgiklassi mitme lubatud tähega. Järgnevalt on toodud erinevad klassi konstruktsioonid.

Tegelasklass Seletus
(pqr)Vastab tekstile, kui see sisaldab kas p, q või r ja see peaks olema ainult üks kord.
(pqr)tähistab eitust ja seetõttu võetakse siin üks tähemärk, välja arvatud p, q või r.
(a-zA-Z)a kuni z ja A kuni Z loetakse.
(reklaam (ps))a kuni d või p kuni s.
(a-dm-p)Mõlema vahemiku liit.
(az && (pqr))a kuni z ja (p, q või r).
(az && (pq))a kuni z ja ka p, q ei arvestata.
(ad-z)Teeb lahutamise.
(az && (mp))a kuni z ja mitte m kuni p.

3. Metakarakterid

Metakarakterid toimivad nagu tavalises avaldises lühikoodid. Järgnevalt on toodud mõned tavaliselt kasutatavad metamärgid.

Regulaarväljendus Seletus
\ dMistahes numbrit vahemikus 0 kuni 9. Selle võib kirjutada ka (0-9).
\ DKõik numbrid, mis puuduvad vahemikus 0 kuni 9. Selle võib kirjutada ka kui (0-9).
\ sTühimärk või (\ t \ n \ x0B \ f \ r).
\ SMitte tühimärk või (\ s).
\ wSõnamärk või (a-zA-Z_0-9).
\ WMittesõnaline märk või (\ w).
\ bSõna piir.
\ BSõnaväline piir.

4. Kvantifikaatorid

Kvantifikaatorites mainitakse iga märgi esinemise arvu, mis sobivad stringiga.

Regulaarväljendus Seletus
a?Esineb üks kord või üldse mitte.
A *A esineb 0 või enam korda.
A +A esineb 1 või enam korda.
A (n)A esineb täpselt n korda.
A (n, )A esineb n või enam.
A (n, m)A esineb vähemalt n korda, kuid see ei tohiks olla üle m korra.

Kuidas luua Java-s regulaaravaldist?

Vaatame nüüd java-programmi ülalnimetatud tavaväljenditega.

Kood:

//Java program to demonstrate regular expressions
import java.util.regex.*;
public class RegExamples (
public static void main(String args())(
String str="hai";
// Returns true if string 1 matches string 2
System.out.println("Returns true if 'hai' matches 'Hai' :"+
Pattern.matches(str, "Hai")); //False
//Returns true if Hai or hai matches parameter 2
System.out.println("Returns true if 'Hai' or 'hai' matches 'Hai' : "+
Pattern.matches("(Hh)ai", "Hai")); //True
// Returns true if the string matches exactly "ann" or "Ann" or "jak" or "Jak"
System.out.println("Returns true if the string matches exactly 'ann' or 'Ann' or 'jak' or 'Jak' with 'Ann' : "+
Pattern.matches("(aA)nn|(jJ)ak", "Ann"));//True
//returns true if the string contains "with" at any place in the string
System.out.println("returns true if the string contains 'with' in the string 'within' : " +
Pattern.matches(".*with.*", "within"));//True
// returns true if the '9448anna' does not have number in the beginning
System.out.println( "returns true if the '9448anna' does not have number in the beginning : "+
Pattern.matches("^(^\\d).*", "9448anna")); //False
System.out.println("returns true if the '9448anna' does not have number in the beginning : " +
Pattern.matches("^(^\\d).*", "anna9448")); //True
)
)

Väljund:

Järeldus

Java regulaaravaldisi kasutatakse laialdaselt reaalajas rakenduste jaoks, näiteks paroolide ja e-posti kontrollimine. Need avaldised on API-d, mis määravad mustrid ja pakuvad stringi otsimist, redigeerimist ja mitmeid muid toiminguid.

Soovitatavad artiklid

See on Java tavaliste avaldiste juhend. Siin arutleme selle üle, kuidas luua javas regulaarsete avaldiste meetodeid, kuidas neid määratleda ja mida tavaliselt kasutatakse. Lisateabe saamiseks võite vaadata ka järgmisi artikleid -

  1. 3 parimat Java koostajat
  2. Regulaarsed avaldised JavaScriptis - omadused ja meetodid
  3. Java rakenduste arendamine
  4. Massiivimeetodid Java koos näidetega
  5. Regexi funktsioonid Pythonis (näide)

Kategooria: