নিবন্ধ ডিরেক্টরি
মাইএসকিউএল ডাটাবেসরেগুলার এক্সপ্রেশন কিভাবে মেলে?মাইএসকিউএল regexp ব্যবহার মত
মাইএসকিউএল রেগুলার এক্সপ্রেশন
আগের অধ্যায়ে আমরা শিখেছি যে MySQL হতে পারে লাইক...% অস্পষ্ট মিলের জন্য।
MySQL অন্যান্য রেগুলার এক্সপ্রেশনের মিলকেও সমর্থন করে। REGEXP অপারেটর MySQL-এ রেগুলার এক্সপ্রেশন ম্যাচিংয়ের জন্য ব্যবহার করা হয়।
আপনি যদি পিএইচপি বা পার্ল জানেন তবে এটি বেশ সোজা, কারণ মাইএসকিউএল-এর রেগুলার এক্সপ্রেশন ম্যাচিং এই স্ক্রিপ্টগুলির মতোই।
নিম্নলিখিত সারণীতে নিয়মিত নিদর্শনগুলি REGEXP অপারেটরে প্রয়োগ করা যেতে পারে।
ধরন | বিবরণ |
---|---|
^ | ইনপুট স্ট্রিং এর শুরুর সাথে মেলে।^ এছাড়াও '\n' বা '\r' এর পরে অবস্থানের সাথে মেলে যদি RegExp অবজেক্টের মাল্টিলাইন বৈশিষ্ট্য সেট করা থাকে। |
$ | ইনপুট স্ট্রিং এর শেষের সাথে মেলে।RegExp অবজেক্টের মাল্টিলাইন প্রপার্টি সেট করা থাকলে, $ '\n' বা '\r'-এর আগের অবস্থানের সাথেও মেলে। |
. | "\n" ছাড়া যেকোনো একক অক্ষর মেলে।'\n' সহ যেকোনো অক্ষর মেলানোর জন্য, '[.\n]'-এর মতো একটি প্যাটার্ন ব্যবহার করুন। |
[...] | অক্ষর সংগ্রহ।যে কোনো একটি অক্ষরের সাথে মেলে।উদাহরণস্বরূপ, '[abc]' মিলবে "plain" এ 'a'। |
[^…] | নেতিবাচক চরিত্র সেট।নেই এমন কোনো অক্ষর মেলে।উদাহরণস্বরূপ, '[^abc]' "প্লেইন"-এ 'p'-এর সাথে মিলবে। |
p1|p2|p3 | p1 বা p2 বা p3 মেলে।উদাহরণস্বরূপ, 'z|food' হয় "z" বা "food" এর সাথে মিলবে। '(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';
নামের ক্ষেত্রে 'ঠিক আছে' দিয়ে শেষ হওয়া সমস্ত ডেটা খুঁজুন:
mysql> SELECT name FROM person_tbl WHERE name REGEXP 'ok$';
নামের ক্ষেত্রে 'mar' স্ট্রিং ধারণকারী সমস্ত ডেটা খুঁজুন:
mysql> SELECT name FROM person_tbl WHERE name REGEXP 'mar';
নামের ক্ষেত্রের সমস্ত ডেটা খুঁজুন যা একটি স্বরবর্ণ অক্ষর দিয়ে শুরু হয় বা 'ঠিক আছে' স্ট্রিং দিয়ে শেষ হয়:
mysql> SELECT name FROM person_tbl WHERE name REGEXP '^[aeiou]|ok$';
হোপ চেন উইলিয়াং ব্লগ ( https://www.chenweiliang.com/ ) শেয়ার করেছেন "কিভাবে মাইএসকিউএল ডাটাবেসের রেগুলার এক্সপ্রেশনের সাথে মেলে? MySQL regexp like use" আপনাকে সাহায্য করবে।
এই নিবন্ধটির লিঙ্ক শেয়ার করতে স্বাগতম:https://www.chenweiliang.com/cwl-492.html
সর্বশেষ আপডেট পেতে চেন ওয়েইলিয়াং এর ব্লগের টেলিগ্রাম চ্যানেলে স্বাগতম!
📚 এই গাইডটিতে বিশাল মূল্য রয়েছে, 🌟এটি একটি বিরল সুযোগ, এটি মিস করবেন না! ⏰⌛💨
ভালো লাগলে শেয়ার এবং লাইক করুন!
আপনার শেয়ার এবং লাইক আমাদের ক্রমাগত অনুপ্রেরণা!