logo

Regex -opetusohjelma - Kuinka kirjoittaa säännöllisiä lausekkeita?

Säännöllinen lauseke (regex) on merkkisarja, joka määrittelee hakukuvion. Näin kirjoittaa säännölliset lausekkeet:

  1. Aloita ymmärtämällä Regexissä käytettyjä erikoismerkkejä, kuten '. '*' '+' '?' Ja enemmän.
  2. Valitse ohjelmointikieli tai työkalu, joka tukee regexiä, kuten Python Perl tai GREP.
  3. Kirjoita kuviosi erikoismerkeillä ja kirjaimellisilla hahmoilla.
  4. Käytä sopivaa toimintoa tai menetelmää mallin etsimiseen merkkijonosta.

Esimerkkejä:

  1. Kirjaimellisten hahmojen sarjan vastaamiseksi kirjoita nämä hahmot kuvioon.
  2. Yhden merkin sovittaminen mahdollisuuksien joukosta, käytä neliöhakeita, esim. [0123456789] vastaa mitä tahansa numeroa.
  3. Edellisen lausekkeen nolla tai enemmän tapahtumien vastaamiseksi Star (*) -symbolia (*).
  4. Yhden tai useamman edellisen lausekkeen esiintymisen vastaamiseksi käytä plus (+) -symbolia.
  5. On tärkeää huomata, että Regex voi olla monimutkainen ja vaikea lukea, joten on suositeltavaa käyttää Regex -testaajia, kuten Regex -testaajat, virheenkorjaus ja optimoiminen kuvioiden optimoimiseksi.

Säännöllinen lauseke (jota joskus kutsutaan rationaaliseksi lausekkeeksi) on merkkisekvenssi, joka määrittelee hakukuvion pääasiassa käytettäväksi kuvioiden sovittamisessa jousien tai merkkijonon vastaavuuden kanssa, ts. "Löydä ja korvaa", kuten operaatiot. Säännölliset lausekkeet ovat yleinen tapa sovittaa kuviot merkkisekvensseihin. Sitä käytetään jokaisella ohjelmointikielellä, kuten C ++ Java ja Python. 



Mikä on säännöllinen ilmaus ja mikä tekee siitä niin tärkeän?  

Regexiä käytetään Google Analytics URL -osoitteessa haun tukemisessa ja korvaa suosituimpien toimittajien, kuten Sublime Notepad ++ -sulkeet Google Docs ja Microsoft Word.

    Example :     Regular expression for an email address :  
^([a-zA-Z0-9_-.]+)@([a-zA-Z0-9_-.]+).([a-zA-Z]{25})$

Yllä olevaa säännöllistä lauseketta voidaan käyttää tarkistamaan, onko tietty merkkijoukko sähköpostiosoite vai ei. 

Kuinka kirjoittaa säännöllisiä lausekkeita?

Säännöllisten lausekkeiden kirjoittamiseen on käytetty tiettyjä elementtejä, kuten alla mainittiin:



1. Toistimet (* + ja {})  

Nämä symbolit toimivat toisina ja kertovat tietokoneelle, että edellistä merkkiä on käytettävä enemmän kuin vain yhden kerran.

2. tähdellä symboli ( *)

Se käskee tietokonetta vastaamaan edellistä merkkiä (tai merkkisarjaa) vähintään 0 kertaa (äärettömänä).

kolmas normaalimuoto
    Example :    The regular expression ab*c will give ac abc abbc abbbc….and so on 

3. Plus -symboli ( +)  

Se käskee tietokonetta toistamaan edellisen merkin (tai merkkisarjan) ainakin yhden tai useamman kerran (äärettömään).



    Example :    The regular expression ab+c will give abc abbc  
abbbc … and so on.

4. Kiharat housut {…}  

Se käskee tietokonetta toistamaan edellisen merkin (tai merkkisarjan) niin monta kertaa kuin arvo tämän kiinnikkeen sisällä.

    Example :    {2} means that the preceding character is to be repeated 2   
times {min} means the preceding character is matches min or more
times. {minmax} means that the preceding character is repeated at
least min & at most max times.

5. jokerimerkki (.) 

Piste -symboli voi korvata minkä tahansa muun symbolin, minkä vuoksi sitä kutsutaan jokerimerkiksi.

    Example :      
The Regular expression .* will tell the computer that any character
can be used any number of times.

6. Valinnainen merkki (?)  

Tämä symboli kertoo tietokoneelle, että edellinen merkki voi olla tai ei ole läsnä otettavissa merkkijonossa.

    Example :      
We may write the format for document file as – docx?
The ‘?’ tells the computer that x may or may not be
present in the name of file format.

7. Caret ( ^) -symboli ( Asetusasento ottelussa)

Caret -symboli kertoo tietokoneelle, että ottelun on aloitettava merkkijonon tai rivin alussa.

    Example :    ^d{3} will match with patterns like '901' in '901-333-'.

8. Dollar ($) -symboli  

Se kertoo tietokoneelle, että ottelun on tapahduttava merkkijonon lopussa tai ennen n rivin tai merkkijonon lopussa.

    Example :    -d{3}$ will match with patterns like '-333' in '-901-333'.

Klo 9. merkkikurssit  

Hahmoluokka vastaa mitä tahansa merkkisarjaa. Sitä käytetään vastaamaan kielen peruselementtiä, kuten kirjain a määrää avaruus symboli jne. 


s : vastaa kaikkia välilyöntiä, kuten tilaa ja välilehteä.
S : vastaa kaikkia ei-valkoisia.
d -d : vastaa mitä tahansa numeron merkkiä.
D: Vastaa kaikkia ei-numeroita.
Sisä- : vastaa mitä tahansa sanamerkkiä (pohjimmiltaan alfa-numeerinen)
Sisä- : vastaa mitä tahansa ei-sanaa.
b - : vastaa mitä tahansa sanarajaa (tämä sisältäisi Spaces Dashes Commas -puolisoiden jne.
[set_of_characters]: Vastaa mitä tahansa yksittäistä merkkiä SET_OF_CHARACTERS. Oletusarvoisesti ottelu on tapausherkkä.

    Example :    [abc] will match characters ab and c in any string.

10. [^SET_OF_CHARACTERS] Kieltäytyminen:  

Vastaa yhtä merkkiä, jota ei ole set_of_characters. Oletusarvoisesti ottelu on tapausherkkä.

    Example :    [^abc] will match any character except abc .

11. [Ensimmäinen viimeinen] Hahmoalue:  

Vastaa mitä tahansa yksittäistä merkkiä alueella ensimmäisestä viimeiseen.

    Example :    [a-zA-z] will match any character from a to z or A to Z.

12. Pako -symboli () 

Jos haluat sovittaa todellisen '+' '.'. Tämä käskee tietokoneen käsittelemään seuraavaa merkkiä hakumerkkinä ja pitämään sitä vastaavakuviona.

    Example :    d+[+-x*]d+ will match patterns like '2+2'  
and '3*9' in '(2+2) * 3*9'.

13. Hahmojen ryhmittely ()  

Sarja säännöllisen lausekkeen erilaisia ​​symboleja voidaan ryhmitellä toisiinsa toimimaan yhtenä yksikönä ja käyttäytymään lohkona tälle, sinun on käärittävä säännöllinen lauseke sululle ().

    Example :    ([A-Z]w+) contains two different elements of the regular   
expression combined together. This expression will match any pattern
containing uppercase letter followed by any character.

14. Pystysuora palkki (|)  

Vastaa mitä tahansa osaa erotettuna pystysuoralla palkkilla (|).

    Example :    th(e|is|at) will match words - the this and that.

15. Numero 

Takaisu: uudelleenkäyttö: Mahdollistaa aikaisemmin sovitetun ala-ekspression (ekspressio, joka on kaapattu tai suljettu pyöreissä sidoksissa) tunnistetaan myöhemmin samassa säännöllisessä ekspressiossa. N tarkoittaa, että N-TH: n kiinnikkeeseen suljettu ryhmä toistetaan nykyisessä asennossa.

    Example :    ([a-z])1 will match ee in Geek because the character   
at second position is same as character at position 1 of the match.

16. Kuinka (?# Kommentti) 

Inline -kommentti: Kommentti päättyy ensimmäiseen sulkeutumiseen.

postimyynnin läpikulku
    Example :    bA(?#This is an inline comment)w+b

17. # [linjan loppuun] 

X-moodikommentti. Kommentti alkaa kaatamattomasta # ja jatkuu linjan loppuun.

    Example :    (?x)bAw+b#Matches words starting with A