Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 35533|Odpoveď: 1

[Zdroj] Základy regulárneho výrazu

[Kopírovať odkaz]
Zverejnené 18. 6. 2019 21:38:16 | | |
Tento príspevok naposledy upravil Kongcicada 18. 6. 2019 o 21:39

predhovor
Pri porovnávaní dát, kvalifikácii pravidiel a analýze crawlerov v projekte použijeme regulárne výrazy. Nasleduje zhrnutie základných poznatkov o pravidelnosti, pričom všetky sú študijné poznámky z raných rokov.

Text

#Základy regulárneho výrazu


.           Reprezentuje akýkoľvek jednotlivý znak okrem \n
[ ] Filtrovanie postáv
[^] Ekvivalent non
|           Prostriedky alebo
() Zmeňte prioritu operácie.
* kvalifikátor, ktorý označuje, že predchádzajúci výraz sa vyskytuje 0 alebo viackrát.
+ kvalifikátor, ktorý označuje, že predchádzajúci výraz sa musí objaviť 1 alebo viackrát. Musí sa objaviť aspoň raz.
?          kvalifikátory, ktoré označujú, že predchádzajúci výraz sa musí objaviť 0 alebo 1-krát.
{n} kvalifikátor, ktorý kvalifikuje výraz pred ním, musí sa vyskytnúť n-krát.
{n,} kvalifikátor, ktorý kvalifikuje predchádzajúci výraz, aby sa vyskytol aspoň n-krát.
{n,m} kvalifikátor, ktorý kvalifikuje predchádzajúci výraz tak, aby sa vyskytol aspoň n krát a najviac m krát.
^ $ je začiatok a koniec reťazca
\d je ekvivalentné [0-9]  
\D je ekvivalentné [^0-9]
\s predstavuje všetky tie biele medzery, ktoré sú neviditeľné
\S sú všetky znaky okrem \s.
\w Označuje [0-9a-zA-Z_]
\w sú všetky ostatné postavy okrem \w.
\b označuje hranicu slova. (Len tvrdenie, posudzovanie, nesúlad.) )
=================================================


.    Reprezentuje akýkoľvek jednotlivý znak okrem \n
a.b
a,b
=========================================
[ ] Filtrovanie postáv
a[0-9]b
a[a-z]b

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

a[^0-9]b znamená, že medzi a a b sa môže objaviť len jeden znak okrem 0123456789.

a[^0-9a-z]b

=====================================================
|  Prostriedky alebo


z|jedlo kľu| má veľmi nízku prioritu, takže tento výraz môže zodpovedať z alebo jedlu. Tento výraz nezodpovedá zood

(z|f)ood znamená zood alebo jedlo

===========================================
() Zmeňte prioritu operácie.

Extrakcia.

=======================================
* kvalifikátor, ktorý označuje, že predchádzajúci výraz sa vyskytuje 0 alebo viackrát.

zoo* znamená zo zoo zooooo
(zoo)* znamená zoozoo.......
a.*b znamená AB AADDDDB AFJDSKLF%$#@dsklfjdsklfjdsklfjb


================================================
+ kvalifikátor, ktorý označuje, že predchádzajúci výraz sa musí objaviť 1 alebo viackrát. Musí sa objaviť aspoň raz.

a.+b
a9dfjsakl3824urnj324239feb
==================================================
? kvalifikátory, ktoré označujú, že predchádzajúci výraz sa musí objaviť 0 alebo 1-krát.

a.? b
AB
AXB


? Ďalšou funkciou je "ukončiť režim chamtivosti". Regulárne výrazy sa predvolene prepínajú do režimu chamtivosti.

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

a0b
a00b
a09b
a99999999999999999999b


========================== ďalšie kvalifikácie =====================
{n} kvalifikátor, ktorý kvalifikuje výraz pred ním, musí sa vyskytnúť n-krát.
a[0-9]{10}b
a1234567899b
======================
{n,} kvalifikátor, ktorý kvalifikuje predchádzajúci výraz, aby sa vyskytol aspoň n-krát.

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



========================================
{n,m} kvalifikátor, ktorý kvalifikuje predchádzajúci výraz tak, aby sa vyskytol aspoň n krát a najviac m krát.

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

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

^ označuje začiatok reťazca

$ označuje koniec reťazca.


^ a $ predstavujú dve vlastnosti reťazca. Jedna označuje počiatočný prvok a druhá koniec


^abc.*xyz$ ^abc122345xyz$   

^abcdefg$ ^abcdefg


fdsfdsfxyz xyz$



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

\dEkvivalent [0-9]
Digitálne

\D [^0-9]


\s predstavuje všetky tie biele, neviditeľné znaky
a\s*b
AB
a                                            




b

\S sú všetky znaky okrem \s.



=================================================
\w [0-9a-zA-Z_]  
Slovo znamená slovo postava.

\w sú všetky ostatné postavy okrem \w.

\b označuje hranicu slova. (Len tvrdenie, posudzovanie, nesúlad.) )

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

.


Nasledujúce metódy môžu naznačovať, že medzi abs sa objaví akýkoľvek jeden znak.
a[\s\S]b
a[\d\D]b
a[\w\W]b






#Skutočný boj

1: Vytvoriť novú konzolovú aplikáciu

2: Vložte nasledujúci kód, môžete testovať modul po module






Epilóg

Online test regulárnych výrazov   Prihlásenie na hypertextový odkaz je viditeľné.
















Predchádzajúci:mysql ako zmeniť heslo root používateľa
Budúci:Java Reactor - Preusporiadajte svoj Java kód
Zverejnené 5. 5. 2020 16:32:41 |
Úplný zoznam bežne používaných regulárnych výrazov
https://www.itsvse.com/thread-9181-1-1.html
(Zdroj: Architect_Programmer)
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com