Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में REGEXP का उपयोग करके 5 न्यूमेरिक कैरेक्टर्स से शुरू होने वाले ईमेल एड्रेस कैसे चुनें

रेगुलर एक्सप्रेशन के साथ ईमेल एड्रेस पैटर्न मैचिंग

5 अंकों से शुरू होने वाले ईमेल एड्रेस खोजने के लिए REGEXP के साथ पैटर्न "^[0-9]{5}" का उपयोग करें।

आइए पहले एक टेबल बनाते हैं:

mysql> CREATE TABLE DemoTable (
    UserEmailAddress VARCHAR(100)
);

रिकॉर्ड्स इन्सर्ट करें:

mysql> INSERT INTO DemoTable VALUES ('6574John@gmail.com');
mysql> INSERT INTO DemoTable VALUES ('Carol23456@gmail.com');
mysql> INSERT INTO DemoTable VALUES ('98989Chris_45678@gmail.com');
mysql> INSERT INTO DemoTable VALUES ('Mike12@gmail.com');
mysql> INSERT INTO DemoTable VALUES ('56453Adam@gmail.com');

सभी रिकॉर्ड्स देखें:

mysql> SELECT * FROM DemoTable;

आउटपुट:

+----------------------------+
| UserEmailAddress           |
+----------------------------+
| 6574John@gmail.com         |
| Carol23456@gmail.com       |
| 98989Chris_45678@gmail.com |
| Mike12@gmail.com           |
| 56453Adam@gmail.com        |
+----------------------------+

5 न्यूमेरिक कैरेक्टर्स से शुरू होने वाले ईमेल एड्रेस चुनने के लिए क्वेरी:

mysql> SELECT * FROM DemoTable
    WHERE UserEmailAddress REGEXP '^[0-9]{5}';

आउटपुट:

+----------------------------+
| UserEmailAddress           |
+----------------------------+
| 98989Chris_45678@gmail.com |
| 56453Adam@gmail.com        |
+----------------------------+

व्याख्या:

  • ^ - स्ट्रिंग की शुरुआत
  • [0-9] - कोई भी डिजिट (0-9)
  • {5} - ठीक 5 बार (क्वांटिफायर)
  • ^[0-9]{5} - स्ट्रिंग ठीक 5 डिजिट्स से शुरू होनी चाहिए

मिलान विश्लेषण:

ईमेलशुरुआतमेल?
6574John@gmail.com6574J (4 डिजिट + अक्षर)नहीं
Carol23456@gmail.comCarol (अक्षर)नहीं
98989Chris_45678@gmail.com98989 (5 डिजिट)हां ✓
Mike12@gmail.comMike1 (अक्षर)नहीं
56453Adam@gmail.com56453 (5 डिजिट)हां ✓

वैकल्पिक पैटर्न:

  • '^[0-9]{5,}': 5 या अधिक डिजिट्स से शुरू
  • '^[0-9]{5}[^0-9]': ठीक 5 डिजिट्स फिर नॉन-डिजिट (अधिक सटीक)
  • REGEXP BINARY केस-सेंसिटिव के लिए (यहां लागू नहीं)
  1. - MySQL में सर्वर पर सभी डेटाबेस की सभी टेबल्स पर GRANT SELECT कैसे करें?

    इसके लिए, आप नीचे दिए गए सिंटैक्स में GRANT SELECT स्टेटमेंट का उपयोग कर सकते हैं: GRANT SELECT ON *.* TO yourUserName@yourHostName; सबसे पहले होस्ट के साथ सभी उपयोगकर्ता नाम सूचीबद्ध करें: mysql> select user,host from mysql.user; इससे निम्न आउटपुट प्राप्त होगा: +------------------+-----------+

  1. - MySQL रेगुलर एक्सप्रेशन का उपयोग करके स्ट्रिंग, संख्या और विशेष वर्ण वाले कॉलम मानों के साथ टेबल अपडेट करें

    समाधान REGEXP ऑपरेटर के साथ UPDATE का उपयोग करके पैटर्न मिलान करें। उदाहरण टेबल बनाएं: INSERT INTO DemoTable2023 VALUES (7), (1), (AUS-100), (US-101); रेगुलर एक्सप्रेशन के साथ अपडेट केवल 1-2 अंकों वाले मानों के सामने Street जोड़ें: WHERE StreetNumber REGEXP ^[0-9]{1,2}$; परिणाम +--------------+

  1. - पायथन में रेगुलर एक्सप्रेशन्स (Regex) उदाहरणों के साथ

    रेगुलर एक्सप्रेशन्स (Regex) पैटर्न मिलान के लिए एक शक्तिशाली भाषा है। पायथन में re मॉड्यूल इसका समर्थन करता है। बुनियादी उपयोग import re txt = Use of python in Machine Learning x = re.search(^Use.*Learning$, txt) if x: print(YES! We have a match!) else: print(No match) मुख्य re फ़ंक्शन्स