როგორ ემთხვევა MySQL მონაცემთა ბაზის რეგულარული გამონათქვამები? MySQL regexp-ის გამოყენება

MySQL მონაცემთა ბაზაროგორ ემთხვევა რეგულარული გამოხატულება?MySQL regexp-ის მსგავსი გამოყენება

MySQL რეგულარული გამონათქვამები

წინა თავებში გავიგეთ, რომ MySQL შეიძლება იყოს მოიწონე...% ბუნდოვანი შესატყვისისთვის.

MySQL ასევე მხარს უჭერს სხვა რეგულარული გამონათქვამების შესატყვისს. REGEXP ოპერატორი გამოიყენება MySQL-ში რეგულარული გამონათქვამების შესატყვისად.

თუ იცით PHP ან Perl, ეს საკმაოდ მარტივია, რადგან MySQL-ის რეგულარული გამოხატვის შესატყვისი მსგავსია ამ სკრიპტების მსგავსი.

შემდეგი ცხრილის რეგულარული შაბლონები შეიძლება გამოყენებულ იქნას REGEXP ოპერატორზე.

რეჟიმიაღწერა
^შეესაბამება შეყვანის სტრიქონის დასაწყისს.^ ასევე ემთხვევა პოზიციას '\n' ან '\r'-ის შემდეგ, თუ დაყენებულია RegExp ობიექტის Multiline თვისება.
$შეესაბამება შეყვანის სტრიქონის ბოლოს.თუ RegExp ობიექტის Multiline თვისება დაყენებულია, $ ასევე ემთხვევა პოზიციას '\n' ან '\r'-მდე.
.ემთხვევა ნებისმიერ სიმბოლოს გარდა "\n".ნებისმიერი სიმბოლოს შესატყვისად, მათ შორის '\n', გამოიყენეთ ნიმუში, როგორიცაა '[.\n]'.
[...]პერსონაჟების კოლექცია.შეესაბამება რომელიმე მოცემულ სიმბოლოს.მაგალითად, '[abc]' ემთხვევა "plai"a" n-ში".
[^…]უარყოფითი პერსონაჟების ნაკრები.შეესაბამება ნებისმიერ სიმბოლოს, რომელიც არ შეიცავს.მაგალითად, '[^abc]' ემთხვევა 'p'-ს "უბრალო".
p1|p2|p3შეესაბამება p1 ან p2 ან p3.მაგალითად, 'z|საკვები' ემთხვევა ან "z"-ს ან "საკვებს". '(z|f)ood' შეესაბამება "zood" ან "food".
*ემთხვევა წინა ქვეგამოთქმას ნულს ან მეტჯერ.მაგალითად, zo* ემთხვევა "z"-ს ისევე როგორც "zoo". * უდრის {0,}-ს.
+ემთხვევა წინა ქვეგამოთქმას ერთ ან მეტჯერ.მაგალითად, "zo+" ემთხვევა "zo" და "zoo", მაგრამ არა "z". + უდრის {1,}-ს.
{n}n არის არაუარყოფითი მთელი რიცხვი.მატჩი განსაზღვრულია n ჯერ.მაგალითად, „o{2}“ არ ემთხვევა „o“-ს „ბობში“, მაგრამ ემთხვევა ორივე o-ს „საჭმელში“.
{n, m}ორივე 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$';

იმედი ჩენ ვეილიანგის ბლოგი ( https://www.chenweiliang.com/ ) გააზიარა „როგორ დავამთხვიოთ რეგულარული გამონათქვამები MySQL მონაცემთა ბაზაში? MySQL regexp like use“ დაგეხმარებათ.

კეთილი იყოს თქვენი მობრძანება ამ სტატიის ბმულის გასაზიარებლად:https://www.chenweiliang.com/cwl-492.html

კეთილი იყოს თქვენი მობრძანება Chen Weiliang-ის ბლოგის ტელეგრამის არხზე, რომ მიიღოთ უახლესი განახლებები!

🔔 იყავით პირველი, ვინც მიიღეთ ღირებული "ChatGPT Content Marketing AI Tool Usage Guide" არხის ზედა დირექტორიაში! 🌟
📚 ეს სახელმძღვანელო შეიცავს უზარმაზარ ღირებულებას, 🌟ეს იშვიათი შესაძლებლობაა, არ გამოტოვოთ! ⏰⌛💨
გააზიარეთ და მოიწონეთ თუ მოგეწონათ!
თქვენი გაზიარება და მოწონებები ჩვენი უწყვეტი მოტივაციაა!

 

评论

თქვენი ელ.ფოსტის მისამართი არ გამოქვეყნდება. გამოყენებულია აუცილებელი ველები * ლეიბლი

გადახვევა ზევით