Sut mae mynegiadau rheolaidd cronfa ddata MySQL yn cyfateb? MySQL regexp fel defnydd

Cronfa ddata MySQLSut mae'r mynegiant rheolaidd yn cyfateb?MySQL regexp fel defnydd

Mynegiadau rheolaidd MySQL

Yn y penodau blaenorol rydym wedi dysgu y gall MySQL fod HOFFI...% ar gyfer paru niwlog.

Mae MySQL hefyd yn cefnogi paru mynegiadau rheolaidd eraill Defnyddir y gweithredwr REGEXP yn MySQL ar gyfer paru mynegiant rheolaidd.

Os ydych chi'n gwybod PHP neu Perl, mae'n eithaf syml, gan fod paru mynegiant rheolaidd MySQL yn debyg i rai'r sgriptiau hyn.

Gellir cymhwyso'r patrymau rheolaidd yn y tabl canlynol i weithredwr REGEXP.

Modddisgrifiad
^Yn cyd-fynd â dechrau'r llinyn mewnbwn.^ hefyd yn cyfateb i'r safle ar ôl '\n' neu '\r' os yw priodwedd Aml-linell y gwrthrych RegExp wedi'i osod.
$Yn cyd-fynd â diwedd y llinyn mewnbwn.Os yw priodwedd Aml-linell y gwrthrych RegExp wedi'i osod, mae $ hefyd yn cyfateb i'r safle cyn '\n' neu '\r'.
.Yn cyfateb i unrhyw nod unigol ac eithrio "\n".I gydweddu ag unrhyw nod gan gynnwys '\n', defnyddiwch batrwm fel '[.\n]'.
[...]casgliad o gymeriadau.Yn cyd-fynd ag unrhyw un o'r cymeriadau a gynhwysir.Er enghraifft, byddai '[abc]' yn cyfateb i "plai'a' yn n".
[^…]Set nodau negyddol.Yn cyd-fynd ag unrhyw gymeriad nad yw wedi'i gynnwys.Er enghraifft, byddai '[^abc]' yn cyfateb i 'p' yn "plain".
t1|p2|t3Yn cyfateb i t1 neu t2 neu t3.Er enghraifft, byddai 'z|food' yn cyfateb naill ai i "z" neu "bwyd". Mae '(z|f)ood' yn cyfateb i "sŵ" neu "bwyd".
*Yn cyfateb i'r isfynegiant blaenorol sero neu fwy o weithiau.Er enghraifft, byddai zo* yn cyfateb i "z" yn ogystal â "sŵ". * yn cyfateb i {0,}.
+Yn cyd-fynd â'r isfynegiant blaenorol unwaith neu fwy.Er enghraifft, byddai 'zo+' yn cyfateb i "zo" a "zoo", ond nid "z". + yn cyfateb i {1,}.
{n}n yn gyfanrif nad yw'n negyddol.Cydweddu n amseroedd penderfynol.Er enghraifft, ni fyddai 'o{2}' yn cyfateb i'r 'o' yn "Bob", ond byddai'n cyfateb i'r ddau o yn "bwyd".
{n,m}Cyfanrifau annegyddol yw m ac n, lle mae n <= m.Yn cyfateb o leiaf n gwaith ac ar y mwyaf m amserau.

enghraifft

Ar ôl deall y gofynion rheolaidd uchod, gallwn ysgrifennu datganiadau SQL gydag ymadroddion rheolaidd yn unol â'n gofynion ein hunain.Isod byddwn yn rhestru ychydig o enghreifftiau bach (enw tabl: person_tbl ) i ddyfnhau ein dealltwriaeth:

Dewch o hyd i'r holl ddata gan ddechrau gyda 'st' yn y maes enw:

mysql> SELECT name FROM person_tbl WHERE name REGEXP '^st';

Dewch o hyd i'r holl ddata sy'n gorffen gyda 'iawn' yn y maes enw:

mysql> SELECT name FROM person_tbl WHERE name REGEXP 'ok$';

Dewch o hyd i'r holl ddata sy'n cynnwys y llinyn 'mar' yn y maes enw:

mysql> SELECT name FROM person_tbl WHERE name REGEXP 'mar';

Darganfyddwch yr holl ddata yn y maes enw sy'n dechrau gyda nod llafariad neu'n gorffen gyda'r llinyn 'iawn':

mysql> SELECT name FROM person_tbl WHERE name REGEXP '^[aeiou]|ok$';

Blog Chen Weiliang Gobeithio ( https://www.chenweiliang.com/ ) shared " Sut i baru mynegiadau rheolaidd cronfa ddata MySQL? Bydd MySQL regexp like use" yn eich helpu chi.

Croeso i chi rannu dolen yr erthygl hon:https://www.chenweiliang.com/cwl-492.html

Croeso i sianel Telegram o blog Chen Weiliang i gael y diweddariadau diweddaraf!

🔔 Byddwch y cyntaf i gael y "Canllaw Defnydd Offer AI Marchnata Cynnwys ChatGPT" gwerthfawr yng nghyfeiriadur uchaf y sianel! 🌟
📚 Mae'r canllaw hwn yn cynnwys gwerth enfawr, 🌟Mae hwn yn gyfle prin, peidiwch â'i golli! ⏰⌛💨
Rhannwch a hoffwch os hoffech chi!
Eich rhannu a'ch hoff bethau yw ein cymhelliant parhaus!

 

发表 评论

Ni fydd eich cyfeiriad e-bost yn cael ei gyhoeddi. 必填 项 已 用 * Label

sgroliwch i'r brig