Sidee MySQL xogta xogta ee tibaaxaha caadiga ah u dhigmaan? MySQL regexp sida isticmaalka

Sidee loo sameeyaa isbarbardhigga tibaaxaha joogtada ah ee ku jira xogta MySQL ? Sidee loo isticmaalaa MySQL regexp sida?

MySQL tibaaxaha caadiga ah

Cutubyadii hore, waxaan ku barannay in MySQL ay u isticmaali karto LIKE ...% isbarbardhigga aan fiicnayn.

MySQL waxa kale oo ay taageertaa is-waafajinta tibaaxaha kale ee caadiga ah. Hawlwadeenka REGEXP waxa loo isticmaalaa MySQL si loogu habeeyo odhaahda caadiga ah.

Haddii aad taqaano PHP ama Perl, way toosan tahay, maadaama MySQL's isbarbardhigga odhaahda caadiga ah ay la mid tahay kuwa qoraalladan.

Qaababka caadiga ah ee shaxdan soo socda ayaa lagu dabaqi karaa hawlwadeenka REGEXP.

Qaabkasharaxaad
^U dhigma bilowga xargaha gelinta^ sidoo kale waxay la mid tahay booska '\n' ama '\r' ka dib haddii hantida Multiline ee shayga RegExp la dhigay.
$U dhigma dhamaadka xargaha gelintaHaddii hantida Multiline ee shayga RegExp la dejiyay, $ sidoo kale waa u dhigma booska ka hor '\n' ama '\r'.
.Ku habboon hal xaraf marka laga reebo "\n".Si aad uhesho xarfo kasta oo ay ku jirto '\n', isticmaal qaabka '[.\n]'.
[...]ururinta jilayaasha.Waafaqaya mid ka mid ah jilayaasha ku jiraTusaale ahaan, '[abc]' waxay u dhigantaa "plai'a' in n.
[^…]Dabeecad xunU dhigma xaraf kasta oo aan ku jirinTusaale ahaan, '[^abc]' waxay la mid noqon doontaa 'p' gudaha "caddaan".
p1|p2|p3Ku habboon p1 ama p2 ama p3.Tusaale ahaan, 'z|cuntadu' waxay u dhigantaa "z" ama "cunto". '(z|f) ood' u dhigma "zood" ama "cunto".
*U dhigma eber-hoosaadka hore ama jeer ka badan.Tusaale ahaan, zo* waxa ay u dhigmi kartaa "z" iyo sidoo kale "zoo". * waxay u dhigantaa {0,}.
+Waafaqaya muujinta hoose ee hore hal ama dhowr jeer.Tusaale ahaan, 'zo+' waxay u dhigmi doontaa "zo" iyo "zoo", laakiin maaha "z". + waxay u dhigantaa {1,}.
{n}n waa isugeyn aan xumaan lahayn.U dhigma sida saxda ah n jeer.Tusaale ahaan, 'o{2}' kuma dhigmi doono 'o' ku jira "Bob", laakiin waxay u dhigmi doontaa labadaba o "cuntada".
{n,m}M iyo n labaduba waa shaandhooyin aan xumaan lahayn, halkaasoo n <= m.Tartamayaa ugu yaraan n jeer iyo ugu badnaan m times.

tusaale

Ka dib markii aan fahamno shuruudaha caadiga ah ee kor ku xusan, waxaan ku qori karnaa bayaannada SQL oo leh tibaaxo joogto ah sida waafaqsan shuruudahayaga.Hoos waxaan ku liis gareyn doonaa dhowr tusaale oo yaryar (magaca miiska: person_tbl) si aan u sii qotominno fahamkeena:

Ka hel dhammaan xogta ka bilaabma 'st' goobta magaca:

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

Soo hel dhammaan xogta ku dhammaata 'ok' goobta magaca:

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

Soo hel dhammaan xogta ay ku jirto xarigga 'mar' ee goobta magaca:

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

Ka hel dhammaan xogta goobta magaca ee ku bilaabata xarfo shaqal ama ku dhammaata xadhigga 'ok':

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

评论

您的邮箱地址不会被公开。必填项已用*标注

Scroll to top