Artikulo Direktoryo
database sa MySQLSa unsang paagi magkatakdo ang regular nga ekspresyon?MySQL regexp sama sa paggamit
MySQL regular nga mga ekspresyon
Sa miaging mga kapitulo atong nahibal-an nga ang MySQL mahimo LIKE...% para sa fuzzy matching.
Gisuportahan usab sa MySQL ang pagpares sa ubang mga regular nga ekspresyon.Ang operator sa REGEXP gigamit sa MySQL para sa regular nga pagpares sa ekspresyon.
Kung nahibal-an nimo ang PHP o Perl, prangka kini, tungod kay ang regular nga pagpares sa ekspresyon sa MySQL parehas sa kini nga mga script.
Ang regular nga mga sumbanan sa mosunod nga lamesa mahimong magamit sa REGEXP operator.
Linya | paghulagway |
---|---|
^ | Motakdo sa sinugdanan sa input string.^ motakdo usab sa posisyon human sa '\n' o '\r' kung ang Multiline property sa RegExp object gitakda. |
$ | Nahiangay sa katapusan sa input string.Kung ang Multiline nga kabtangan sa RegExp nga butang gitakda, ang $ motakdo usab sa posisyon sa wala pa ang '\n' o '\r'. |
. | Nahiangay sa bisan unsang karakter gawas sa "\n".Aron ipares ang bisan unsang karakter lakip ang '\n', gamita ang pattern sama sa '[.\n]'. |
[...] | koleksyon sa mga karakter.Ipares sa bisan unsa nga mga karakter.Pananglitan, ang '[abc]' motakdo sa "plai'a' sa n". |
[^…] | Negatibo nga set sa karakter.Nahiangay sa bisan unsang karakter nga wala gilakip.Pananglitan, ang '[^abc]' motakdo sa 'p' sa "plain". |
p1|p2|p3 | Tugma ang p1 o p2 o p3.Pananglitan, ang 'z|pagkaon' motakdo sa "z" o "pagkaon". Ang '(z|f)ood' motakdo sa "zood" o "pagkaon". |
* | Nahiangay sa nag-una nga subexpression nga zero o daghang beses.Pananglitan, ang zo* motakdo sa "z" ingon man sa "zoo". * katumbas sa {0,}. |
+ | Nahiangay sa nag-una nga subexpression usa o daghang beses.Pananglitan, ang 'zo+' motakdo sa "zo" ug "zoo", apan dili "z". + katumbas sa {1,}. |
{n} | n kay dili negatibo nga integer.Tugma sa eksakto nga n beses.Pananglitan, ang 'o{2}' dili motakdo sa 'o' sa "Bob", apan motakdo sa duha ka o sa "pagkaon". |
{n,m} | Ang m ug n dili negatibo nga mga integer, diin n <= m.Match sa labing menos n nga mga panahon ug sa labing daghan nga m nga mga panahon. |
pananglitan
Human masabtan ang mga regular nga kinahanglanon sa ibabaw, mahimo namong isulat ang mga pahayag sa SQL nga adunay regular nga mga ekspresyon sumala sa among kaugalingong mga kinahanglanon.Sa ubos among ilista ang pipila ka gagmay nga mga pananglitan (ngalan sa lamesa: person_tbl ) aron mapalawom ang among pagsabot:
Pangitaa ang tanang datos nga nagsugod sa 'st' sa name field:
mysql> SELECT name FROM person_tbl WHERE name REGEXP '^st';
Pangitaa ang tanang datos nga nagtapos sa 'ok' sa field nga ngalan:
mysql> SELECT name FROM person_tbl WHERE name REGEXP 'ok$';
Pangitaa ang tanan nga datos nga adunay sulud nga 'mar' sa field nga ngalan:
mysql> SELECT name FROM person_tbl WHERE name REGEXP 'mar';
Pangitaa ang tanan nga datos sa field sa ngalan nga nagsugod sa usa ka karakter sa bokales o natapos sa string nga 'ok':
mysql> SELECT name FROM person_tbl WHERE name REGEXP '^[aeiou]|ok$';
Paglaum Chen Weiliang Blog ( https://www.chenweiliang.com/ ) mipakigbahin "Unsaon pagpares sa MySQL database regular nga mga ekspresyon? Ang MySQL regexp sama sa paggamit" makatabang kanimo.
Welcome sa pagpaambit sa link niini nga artikulo:https://www.chenweiliang.com/cwl-492.html
Malipayon nga pag-abut sa channel sa Telegram sa blog ni Chen Weiliang aron makuha ang labing bag-ong mga update!
📚 Kini nga giya adunay daghang kantidad, 🌟Kini usa ka talagsaon nga oportunidad, ayaw palabya kini! ⏰⌛💨
Share ug like kung ganahan ka!
Ang imong pagpaambit ug pag-like mao ang among padayon nga kadasig!