Директорияи мақолаҳо
пойгоҳи додаҳои MySQLИфодаи муқаррарӣ чӣ гуна мувофиқат мекунад?MySQL regexp ба монанди истифода
Ифодаҳои муқаррарии MySQL
Дар бобҳои қаблӣ мо фаҳмидем, ки MySQL метавонад гузарад МИСЛИ...% барои мувофиқати норавшан.
MySQL инчунин мувофиқати дигар ифодаҳои муқаррариро дастгирӣ мекунад.Оператори REGEXP дар MySQL барои мувофиқ кардани ифодаҳои муқаррарӣ истифода мешавад.
Агар шумо PHP ё Perl-ро донед, ин хеле содда аст, зеро мувофиқати ифодаи муқаррарии MySQL ба скриптҳои ин скриптҳо монанд аст.
Намунаҳои муқаррарии ҷадвали зерин метавонанд ба оператори REGEXP татбиқ карда шаванд.
Усул | тавсиф |
---|---|
^ | Ба оғози сатри вуруд мувофиқат мекунад.^ инчунин ба мавқеъ пас аз '\n' ё '\r' мувофиқат мекунад, агар хосияти Multiline объекти RegExp муқаррар карда шуда бошад. |
$ | Ба охири сатри вуруд мувофиқат мекунад.Агар хосияти Multiline объекти RegExp муқаррар карда шуда бошад, $ инчунин ба мавқеъи пеш аз '\n' ё '\r' мувофиқат мекунад. |
. | Ба ҳар як аломат мувофиқат мекунад, ба истиснои "\n".Барои мувофиқ кардани ҳар гуна аломат, аз ҷумла '\n', намунаи монанди '[.\n]'-ро истифода баред. |
[...] | маҷмӯи аломатҳо.Ба ҳар яке аз аломатҳои мавҷуда мувофиқат мекунад.Масалан, '[abc]' ба "plai'a' дар n". |
[^…] | Маҷмӯи аломатҳои манфӣ.Ба ҳар аломате, ки дар он мавҷуд нест, мувофиқат мекунад.Масалан, '[^abc]' ба 'p' дар "plain" мувофиқат мекунад. |
p1|p2|p3 | P1 ё p2 ё p3 мувофиқат мекунад.Масалан, "z|food" ба "z" ё "food" мувофиқат мекунад. '(z|f)ood' ба "zood" ё "хӯрок" мувофиқат мекунад. |
* | Ба зер ифодаи қаблӣ сифр ё бештар маротиба мувофиқат мекунад.Масалан, zo* ба «z» ва инчунин «зоопарк» мувофиқат мекунад. * ба {0,} баробар аст. |
+ | Як ё якчанд маротиба ба зер ифодаи қаблӣ мувофиқат мекунад.Масалан, 'zo+' ба "zo" ва "zoo" мувофиқат мекунад, аммо на "z". + ба {1,} баробар аст. |
{н} | n адади ғайриманфӣ аст.Айнан n маротиба мувофиқат мекунад.Масалан, 'o{2}' ба 'o' дар "Боб" мувофиқат намекунад, балки ба ҳардуи o дар "хӯрок" мувофиқат мекунад. |
{н,м} | Ҳарду m ва n ададҳои ғайриманфӣ мебошанд, ки дар он n <= m.Камаш n маротиба ва бештар аз m маротиба мувофиқат мекунад. |
мисол
Пас аз фаҳмидани талаботи муқаррарии дар боло зикршуда, мо метавонем изҳороти SQL-ро бо ифодаҳои муқаррарӣ мувофиқи талаботи худамон нависем.Дар зер мо чанд мисоли хурдро номбар мекунем (номи ҷадвал: person_tbl ) барои амиқтар фаҳмиши мо:
Ҳама маълумотеро, ки аз 'st' сар мешаванд, дар майдони ном пайдо кунед:
mysql> SELECT name FROM person_tbl WHERE name REGEXP '^st';
Ҳама маълумотеро, ки бо 'ok' тамом мешавад, дар майдони ном пайдо кунед:
mysql> SELECT name FROM person_tbl WHERE name REGEXP 'ok$';
Ҳама маълумотеро, ки сатри 'mar' доранд, дар майдони ном пайдо кунед:
mysql> SELECT name FROM person_tbl WHERE name REGEXP 'mar';
Ҳама маълумотро дар майдони ном, ки бо аломати садонок оғоз мешавад ё бо сатри 'ok' тамом мешавад, пайдо кунед:
mysql> SELECT name FROM person_tbl WHERE name REGEXP '^[aeiou]|ok$';
Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) shared "Чӣ гуна ифодаҳои муқаррарии пойгоҳи додаҳои MySQL-ро мувофиқ кардан мумкин аст? MySQL regexp мисли истифода" ба шумо кӯмак мекунад.
Хуш омадед ба мубодилаи истиноди ин мақола:https://www.chenweiliang.com/cwl-492.html
Хуш омадед ба канали Telegram блоги Чен Вейлян барои гирифтани навсозиҳои охирин!
📚 Ин дастур дорои арзиши бузург аст, 🌟Ин як имконияти нодир аст, онро аз даст надиҳед! ⏰⌛💨
Агар ба шумо маъқул бошад, мубодила кунед ва лайк монед!
Мубодилаи шумо ва лайкҳои шумо ангезаи доимии мост!