Šo ziņu pēdējo reizi rediģēja Kongcicada 2019-6-18 21:39
priekšvārds Veicot dažus datu atbilstības, kārtulu kvalifikācijas un rāpuļprogrammas analīzes datus projektā, mēs izmantosim regulārās izteiksmes. Tālāk ir apkopotas pamatzināšanas par regularitāti, kas visas ir studiju piezīmes no pirmajiem gadiem.
Teksts
#Regulāro izteiksmju pamati
. Apzīmē jebkuru atsevišķu rakstzīmi, izņemot \n
[ ] Rakstzīmju filtrēšana
[^] Līdzvērtīgs
| līdzekļi vai
() Mainīt darbības prioritāti.
* ierobežotājs, kas norāda, ka iepriekšējā izteiksme notiek 0 vai vairāk reizes.
+ ierobežotājs, kas norāda, ka iepriekšējai izteiksmei ir jāparādās 1 vai vairākas reizes. Tam jāparādās vismaz vienu reizi.
? apzīmētāji, kas norāda, ka iepriekšējai izteiksmei ir jāparādās 0 vai 1 reizes.
{n} ierobežotājs, kas kvalificē izteiksmi, kas ir pirms tās, ir jānotiek n reizes.
{n,} apzīmētājs, kas kvalificē iepriekšējo izteiksmi vismaz n reizes.
{n,m} apzīmētājs, kas kvalificē iepriekšējo izteiksmi vismaz n reizes un ne vairāk kā m reizes.
^ $ ir virknes sākums un beigas
\d ir ekvivalents [0-9]
\D ir ekvivalents [^0-9]
\s apzīmē visas tās atstarpes rakstzīmes, kas ir neredzamas
\S ir visas rakstzīmes, izņemot \s.
\w Norāda [0-9a-zA-Z_]
\w ir visas pārējās rakstzīmes, izņemot \w.
\b norāda vārda robežu. (Apgalvot, tikai tiesnesis, neatbilstība.) )
=================================================
. Apzīmē jebkuru atsevišķu rakstzīmi, izņemot \n
a.b
a, b
=========================================
[ ] Rakstzīmju filtrēšana
a[0-9]b
a[a-z]b
a[0-9a-zA-Z]b
a1b
AXB
aAb
a[^0-9]b nozīmē, ka starp a un b var parādīties tikai jebkura atsevišķa rakstzīme, izņemot 0123456789.
a[^0-9a-z]b
=====================================================
| līdzekļi vai
z|pārtika sakarā ar| ir ļoti zema prioritāte, tāpēc šī izteiksme var atbilst z vai ēdienam, šī izteiksme neatbilst zood
(z|f)ood nozīmē zood vai pārtiku
===========================================
() Mainīt darbības prioritāti.
Ekstrakcijas grupa.
=======================================
* ierobežotājs, kas norāda, ka iepriekšējā izteiksme notiek 0 vai vairāk reizes.
zooloģiskais dārzs* nozīmē zo zooloģiskais dārzs zooooooo
(zoo)* norāda zoozoo.......
a.*b apzīmē AB AADDDDB AFJDSKLF%$#@dsklfjdsklfjdsklfjb
================================================
+ ierobežotājs, kas norāda, ka iepriekšējai izteiksmei ir jāparādās 1 vai vairākas reizes. Tam jāparādās vismaz vienu reizi.
a.+b
a9dfjsakl3824urnj324239feb
==================================================
? apzīmētāji, kas norāda, ka iepriekšējai izteiksmei ir jāparādās 0 vai 1 reizes.
a.? b
ab
AXB
? Vēl viena funkcija ir "izbeigt alkatības režīmu". Regulārās izteiksmes pēc noklusējuma ir alkatības režīmā.
======================================================================
a[0-9]+b
a0b
a00b
A09B
a99999999999999999999b
========================== citi kvalifikācijas turnīri =====================
{n} ierobežotājs, kas kvalificē izteiksmi, kas ir pirms tās, ir jānotiek n reizes.
a[0-9]{10}b
A1234567899B
======================
{n,} apzīmētājs, kas kvalificē iepriekšējo izteiksmi vismaz n reizes.
1[a-z]{3,}2
1axffdsafdsafdsafdsafdsafdsfdsfdsfdsfdsa2
========================================
{n,m} apzīmētājs, kas kvalificē iepriekšējo izteiksmi vismaz n reizes un ne vairāk kā m reizes.
a[0-9]{3,7}b
a0000000b
===========================================
^ norāda virknes sākumu
$ norāda virknes beigas.
^ un $ apzīmē divas virknes iezīmes. Viens norāda sākuma iezīmi, bet otrs - beigas
^abc.*xyz$ ^abc122345xyz$
^abcdefg$ ^abcdefg
fdsfdsfxyz xyz$
===========================================
a[0-9]b
a\db
\dEkvivalents [0-9]
digitālais
\D [^0-9]
\s apzīmē visas šīs atstarpes, neredzamās rakstzīmes
a\s*b
ab
a
b
\S ir visas rakstzīmes, izņemot \s.
=================================================
\w [0-9a-zA-Z_]
Vārds nozīmē vārda raksturu.
\w ir visas pārējās rakstzīmes, izņemot \w.
\b norāda vārda robežu. (Apgalvot, tikai tiesnesis, neatbilstība.) )
============================================
.
Šādas metodes var norādīt, ka starp abs parādās jebkura atsevišķa rakstzīme.
a[\s\S]b
a[\d\D]b
a[\w\W]b
#Faktiskā cīņa
1: Izveidojiet jaunu konsoles lietojumprogrammu
2: Ielīmējiet šādu kodu, jūs varat pārbaudīt moduli pēc moduļa
Epilogs
Regulāro izteiksmju tiešsaistes tests Hipersaites pieteikšanās ir redzama.
|