Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 35533|Antwoord: 1

[Bron] Basisprincipes van reguliere expressies

[Link kopiëren]
Geplaatst op 18-06-2019 21:38:16 | | |
Dit bericht is voor het laatst bewerkt door Kongcicada op 2019-6-18 21:39

inleiding
Bij het uitvoeren van data matching, regelkwalificatie en crawler-analyse in het project, gebruiken we reguliere expressies. Hieronder volgt een samenvatting van de basiskennis van regelmatigheid, die allemaal studienotities uit de vroege jaren zijn.

Sms

#Basisprincipes van reguliere expressies


.           Vertegenwoordigt elk enkel teken behalve \n
[ ] Karakterfiltering
[^] Equivalent aan non
|           betekent of
() Verander de prioriteit van de operatie.
* kwalifiseerder, wat aangeeft dat de vorige uitdrukking 0 of vaker voorkomt.
+ kwalificater, wat aangeeft dat de voorgaande uitdrukking 1 of meer keer moet voorkomen. Het moet minstens één keer verschijnen.
?          kwalificaties, die aangeven dat de voorgaande uitdrukking 0 of 1 keer moet voorkomen.
{n} kwalificatie, die de uitdrukking die eraan voorafgaat kwalificeert, moet n keer voorkomen.
{n,} kwalificatie, die de voorgaande uitdrukking kwalificeert om minstens n keer voor te komen.
{n,m} kwalificatie, die de voorgaande uitdrukking kwalificeert om minstens n keer en maximaal m keer voor te komen.
^ $ is het begin en einde van de string
\d is gelijk aan [0-9]  
\D is gelijkwaardig aan [^0-9]
\s vertegenwoordigt al die witspatie die onzichtbaar zijn
\S zijn alle karakters behalve \s.
\w Geeft aan [0-9a-zA-Z_]
\w is alle andere personages behalve \w.
\b geeft de grens van het woord aan. (Alleen bewaren, oordeel, mismatch.) )
=================================================


.    Vertegenwoordigt elk enkel teken behalve \n
a.b
a,b
=========================================
[ ] Karakterfiltering
a[0-9]b
a[a-z]b

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

A[^0-9]b betekent dat alleen elk enkel karakter anders dan 0123456789 tussen A en B kan voorkomen.

a[^0-9a-z]b

=====================================================
|  betekent of


z|voedsel door| heeft een zeer lage prioriteit, dus deze uitdrukking kan overeenkomen met z of food. deze uitdrukking komt niet overeen met zood.

(z|f)ood betekent zood of voedsel

===========================================
() Verander de prioriteit van de operatie.

Extractiegroep.

=======================================
* kwalifiseerder, wat aangeeft dat de vorige uitdrukking 0 of vaker voorkomt.

zoo* betekent zo zoo zoooooooooo
(zoo)* geeft zoozoo aan.......
a.*b staat voor AB AADDDDB AFJDSKLF%$#@dsklfjdsklfjdsklfjb


================================================
+ kwalificater, wat aangeeft dat de voorgaande uitdrukking 1 of meer keer moet voorkomen. Het moet minstens één keer verschijnen.

a.+b
A9dfjSAKL3824urnj324239feb
==================================================
? kwalificaties, die aangeven dat de voorgaande uitdrukking 0 of 1 keer moet voorkomen.

a.? b
AB
axb


? Een andere functie is het "beëindigen van de hebzuchtmodus". Reguliere expressies staan standaard in hebzuchtmodus.

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

a0b
a00b
A09b
a99999999999999999999b


========================== andere kwalificaties =====================
{n} kwalificatie, die de uitdrukking die eraan voorafgaat kwalificeert, moet n keer voorkomen.
a[0-9]{10}b
A1234567899b
======================
{n,} kwalificatie, die de voorgaande uitdrukking kwalificeert om minstens n keer voor te komen.

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



========================================
{n,m} kwalificatie, die de voorgaande uitdrukking kwalificeert om minstens n keer en maximaal m keer voor te komen.

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

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

^ geeft het begin van de snaar aan

$ geeft het uiteinde van de snaar aan.


^ en $ vertegenwoordigen de twee kenmerken van de string. De ene geeft het beginkenmerk aan en de andere het einde


^abc.*xyz$ ^abc122345xyz$   

^abcdefg$ ^abcdefg


fdsfdsfxyz xyz$



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

\dEquivalent aan [0-9]
Digitaal

\D [^0-9]


\s staat voor al die witspatie, onzichtbare tekens
a\s*b
AB
a                                            




b

\S zijn alle karakters behalve \s.



=================================================
\w [0-9a-zA-Z_]  
woord betekent woordkarakter.

\w is alle andere personages behalve \w.

\b geeft de grens van het woord aan. (Alleen bewaren, oordeel, mismatch.) )

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

.


De volgende methoden kunnen aangeven dat elk enkel teken tussen abs voorkomt.
a[\s\S]b
a[\d\D]b
a[\w\W]b






#Daadwerkelijke gevechten

1: Maak een nieuwe consoleapplicatie aan

2: Plak de volgende code, je kunt module voor module testen






Epiloog

Online test voor reguliere expressie   De hyperlink-login is zichtbaar.
















Vorig:MySQL Hoe het wachtwoord van de rootgebruiker te wijzigen
Volgend:Java Reactor - Reorganiseer je Java-code
Geplaatst op 05-05-2020 16:32:41 |
Een volledige lijst van veelgebruikte reguliere expressies
https://www.itsvse.com/thread-9181-1-1.html
(Bron: Architect_Programmer)
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com