Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 35533|Odgovoriti: 1

[Vir] Osnove regularnih izrazov

[Kopiraj povezavo]
Objavljeno na 18. 06. 2019 21:38:16 | | |
Ta objava je bila nazadnje urejena s strani Kongcicada 18. 6. 2019 ob 21:39

predgovor
Pri usklajevanju podatkov, kvalifikaciji pravil in analizi podatkov za pajke v projektu bomo uporabljali regularne izraze. Spodaj je povzetek osnovnega znanja o rednosti, vse to so študijski zapiski iz zgodnjih let.

Besedilno sporočilo

#Osnove regularnih izrazov


.           Predstavlja katerikoli posamezen znak, razen \n
[ ] Filtriranje znakov
[^] Enakovredno non
|           pomeni ali
() Spremeni prioriteto operacije.
* kvalifikator, ki označuje, da se prejšnji izraz pojavi 0 ali večkrat.
+ kvalifikator, ki označuje, da se mora predhodni izraz pojaviti 1 ali večkrat. Mora se pojaviti vsaj enkrat.
?          kvalifikacije, ki označujejo, da se mora prejšnji izraz pojaviti 0 ali 1-krat.
{n} kvalifikator, ki kvalificira izraz, ki mu predhodi, se mora pojaviti n-krat.
{n,}, ki kvalificira, da se prejšnji izraz pojavi vsaj n-krat.
{n,m}, ki kvalificira predhodni izraz, da se pojavi vsaj n krat in največ m krat.
^ $ je začetek in konec strune
\d je ekvivalentno [0-9]  
\D je enakovredno [^0-9]
\s predstavlja vse tiste bele presledke, ki so nevidni
\S so vsi znaki razen \s.
\w Označuje [0-9a-zA-Z_]
\w so vsi ostali liki razen \w.
\b označuje mejo besede. (Trditev, samo sodba, neujemanje.) )
=================================================


.    Predstavlja katerikoli posamezen znak, razen \n
a.b
a,b
=========================================
[ ] Filtriranje znakov
a[0-9]b
a[a-z]b

a[0-9a-zA-Z]b
a1b
axb
aAb

a[^0-9]b pomeni, da se lahko med a in b pojavi le en sam znak razen 0123456789.

a[^0-9a-z]b

=====================================================
|  pomeni ali


z|hrana zaradi| ima zelo nizko prioriteto, zato se ta izraz lahko ujema z ali hrano. Ta izraz ne ustreza zoodu.

(z|f)ood pomeni zood ali hrana

===========================================
() Spremeni prioriteto operacije.

Ekstrakcijska skupina.

=======================================
* kvalifikator, ki označuje, da se prejšnji izraz pojavi 0 ali večkrat.

zoo* pomeni zoo zoooo
(zoo)* označuje zoozoo.......
a.*b pomeni AB AADDDDB AFJDSKLF%$#@dsklfjdsklfjdsklfjb


================================================
+ kvalifikator, ki označuje, da se mora predhodni izraz pojaviti 1 ali večkrat. Mora se pojaviti vsaj enkrat.

a.+b
a9dfjsakl3824urnj324239feb
==================================================
? kvalifikacije, ki označujejo, da se mora prejšnji izraz pojaviti 0 ali 1-krat.

a.? b
ab
axb


? Druga funkcija je "konec načina pohlepa". Regularni izrazi privzeto preklopijo v način pohlepa.

======================================================================
a[0-9]+b

a0b
a00b
a09b
a99999999999999999999b


========================== druge kvalifikacije =====================
{n} kvalifikator, ki kvalificira izraz, ki mu predhodi, se mora pojaviti n-krat.
a[0-9]{10}b
a1234567899b
======================
{n,}, ki kvalificira, da se prejšnji izraz pojavi vsaj n-krat.

1[a-z]{3,}2
1axffdsafdsafdasfdsafdsafdsafdsfdsfdsafsdfdsfdsfdsa2



========================================
{n,m}, ki kvalificira predhodni izraz, da se pojavi vsaj n krat in največ m krat.

a[0-9]{3,7}b
a00000000b

===========================================

^ označuje začetek strune

$ označuje konec niza.


^ in $ predstavljata dve značilnosti niza. Ena označuje začetno značilnost, druga pa konec


^abc.*xyz$ ^abc122345xyz$   

^abcdefg$ ^abcdefg


fdsfdsfxyz xyz$



===========================================
a[0-9]b
a\db

\dEkvivalent [0-9]
Digitalno

\D [^0-9]


\s predstavlja vse tiste bele presledke, nevidne znake
a\s*b
ab
a                                            




b

\S so vsi znaki razen \s.



=================================================
\w [0-9a-zA-Z_]  
Beseda pomeni beseda lik.

\w so vsi ostali liki razen \w.

\b označuje mejo besede. (Trditev, samo sodba, neujemanje.) )

============================================

.


Naslednje metode lahko nakazujejo, da se med abs pojavi katerikoli posamezen znak.
a[\s\S]b
a[\d\D]b
a[\w\W]b






#Dejanski boj

1: Ustvarite novo konzolno aplikacijo

2: Prilepite naslednjo kodo, lahko testirate modul za modulom






Epilog

Spletni test regularnih izrazov   Prijava do hiperpovezave je vidna.
















Prejšnji:mysql: kako spremeniti geslo root uporabnika
Naslednji:Java Reactor - Preuredite svojo Java kodo
Objavljeno na 5. 05. 2020 16:32:41 |
Popoln seznam pogosto uporabljenih regularnih izrazov
https://www.itsvse.com/thread-9181-1-1.html
(Vir: Architect_Programmer)
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com