Мақала анықтамалығы
MySQL деректер қорыТұрақты өрнек қалай сәйкес келеді?MySQL regexp сияқты пайдалану
MySQL тұрақты өрнектері
Алдыңғы тарауларда біз MySQL болуы мүмкін екенін білдік ҰНАУ...% анық емес сәйкестік үшін.
MySQL сонымен қатар басқа тұрақты өрнектердің сәйкестігін қолдайды.REGEXP операторы MySQL-де қалыпты өрнектерді сәйкестендіру үшін пайдаланылады.
Егер сіз PHP немесе Perl тілдерін білсеңіз, бұл өте қарапайым, өйткені MySQL-тің тұрақты өрнек сәйкестігі осы сценарийлердің өрнектеріне ұқсас.
Келесі кестедегі қалыпты үлгілерді REGEXP операторына қолдануға болады.
Режим | 描述 |
---|---|
^ | Енгізу жолының басына сәйкес келеді.^ сонымен қатар RegExp нысанының Multiline сипаты орнатылған болса, '\n' немесе '\r' кейінгі орынға сәйкес келеді. |
$ | Енгізу жолының соңына сәйкес келеді.RegExp нысанының Multiline сипаты орнатылған болса, $ сонымен қатар '\n' немесе '\r' алдындағы орынға сәйкес келеді. |
. | "\n"-ден басқа кез келген жалғыз таңбаға сәйкес келеді.Кез келген таңбаны, соның ішінде "\n" таңбасын сәйкестендіру үшін "[.\n]" сияқты үлгіні пайдаланыңыз. |
[...] | кейіпкерлер жинағы.Қамтылған таңбалардың кез келгеніне сәйкес келеді.Мысалы, '[abc]' «plain ішіндегі 'a'. |
[^…] | Теріс таңбалар жинағы.Құрамында жоқ кез келген таңбаға сәйкес келеді.Мысалы, '[^abc]' "plain" тіліндегі "p" мәніне сәйкес келеді. |
p1|p2|p3 | p1 немесе p2 немесе p3 сәйкес келеді.Мысалы, «z|food» «z» немесе «тағам» сөздеріне сәйкес келеді. '(z|f)ood' "zood" немесе "тағам" сәйкес келеді. |
* | Алдыңғы ішкі өрнекке нөл немесе одан көп рет сәйкес келеді.Мысалы, zo* «z» және «хайуанаттар бағы» сәйкес келеді. * {0,} тең. |
+ | Алдыңғы ішкі өрнекке бір немесе бірнеше рет сәйкес келеді.Мысалы, «zo+» «zo» және «хайуанаттар бағы» сәйкес келеді, бірақ «z» емес. + {1,} тең. |
{n} | n теріс емес бүтін сан.Дәл n рет сәйкес келеді.Мысалы, «o{2}» «Боб» ішіндегі «o» әрпіне сәйкес келмейді, бірақ «тағам» ішіндегі екі oға да сәйкес келеді. |
{n,м} | 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 блогы ( https://www.chenweiliang.com/ ) бөлісті "MySQL дерекқорының тұрақты өрнектерін қалай сәйкестендіруге болады? MySQL regexp like use» сізге көмектеседі.
Осы мақаланың сілтемесін бөлісуге қош келдіңіз:https://www.chenweiliang.com/cwl-492.html
Соңғы жаңартуларды алу үшін Чен Вэйлян блогының Telegram арнасына қош келдіңіз!
📚 Бұл нұсқаулықта үлкен құндылық бар, 🌟Бұл сирек мүмкіндік, оны жіберіп алмаңыз! ⏰⌛💨
Ұнаса лайк басып, бөлісіңіз!
Сіздің бөлісулеріңіз бен лайктарыңыз - біздің үздіксіз мотивациямыз!