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

MongoDB में सरणी स्ट्रिंग के लिए रेगुलर एक्सप्रेशन मिलान

रेगुलर एक्सप्रेशन के साथ सरणी क्वेरी

MongoDB में, किसी सरणी फील्ड के अंदर स्ट्रिंग मानों के लिए रेगुलर एक्सप्रेशन मिलान करने के लिए, सीधे फील्ड नाम पर रेगेक्स लागू करें। MongoDB सरणी के **किसी भी** तत्व के विरुद्ध रेगेक्स का परीक्षण करता है।

सिंटैक्स

db.yourCollectionName.find( { yourFieldName: /yourStartingValue./ } ).pretty();

उदाहरण: डेटा डालना

> db.queryArrayDemo.insertOne({"StudentFullName":["Carol Taylor","Caroline Williams","Claire Brown"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5ca2774c6304881c5ce84ba0") }
> db.queryArrayDemo.insertOne({"StudentFullName":["John Smith","Jace Doe","Jabin Brown"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5ca277b36304881c5ce84ba1") }

सभी दस्तावेज़ देखना

> db.queryArrayDemo.find().pretty();

आउटपुट:

{ "_id" : ObjectId("5ca2774c6304881c5ce84ba0"), "StudentFullName" : [ "Carol Taylor", "Caroline Williams", "Claire Brown" ] }
{ "_id" : ObjectId("5ca277b36304881c5ce84ba1"), "StudentFullName" : [ "John Smith", "Jace Doe", "Jabin Brown" ] }

रेगेक्स क्वेरी: "J" से शुरू होने वाले नाम

> db.queryArrayDemo.find( { StudentFullName : /J./ } ).pretty();

आउटपुट (केवल दूसरा दस्तावेज़ मिलता है क्योंकि इसकी सरणी में "J" से शुरू होने वाले नाम हैं):


नोट: रेगेक्स /J./ का अर्थ है "J" से शुरू होने वाला कोई भी स्ट्रिंग। केस-इनसेंसिटिव मिलान के लिए /J./i उपयोग करें। यह क्वेरी उन दस्तावेज़ों को लौटाती है जहां सरणी का **कम से कम एक** तत्व पैटर्न से मेल खाता है।

  1. - पायथन में रेगुलर एक्सप्रेशन का उपयोग करके व्हाइटस्पेस से कैसे मिलान करें?

    निम्न कोड दी गई स्ट्रिंग में व्हाइटस्पेस से मिलान करता है।उदाहरणimport re\nresult = re.search(r[\s], The Indian Express)\nprint(result)आउटपुट<_sre.SRE_Match object at 0x0000000005106648>उदाहरणनिम्न कोड दी गई स्ट्रिंग में सभी व्हाइटस्पेस ढूंढता है और उन्हें प्रिंट करता है।import re\nresult = re

  1. - पायथन में रेगुलर एक्सप्रेशन का उपयोग करके नॉन-वर्ड कैरेक्टर्स से कैसे मिलान करें?

    नीचे दिया गया कोड दी गई स्ट्रिंग से सभी नॉन-वर्ड कैरेक्टर्स से मिलान करता है और उनकी सूची प्रिंट करता है।उदाहरणimport re\ns = ab5z8d*$&Y@\nregx = re.compile(r\W)\nresult = regx.findall(s)\nprint(result)आउटपुटयह आउटपुट देता है:[*, $, &, @]

  1. - पायथन में रेगुलर एक्सप्रेशन का उपयोग करके वर्ड से कैसे मिलान करें?

    निम्न कोड दी गई स्ट्रिंग में meeting शब्द से मिलान करता है।यह एनक्लोजिंग कैरेक्टर्स का सम्मान करने के लिए पॉजिटिव लुक-अहेड और लुक-बिहाइंड असर्शन का उपयोग करता है लेकिन उन्हें मिलान में शामिल किए बिना।उदाहरणimport re\ns = https://www.google.com/meeting_agenda_minutes.html\nresult = re.findall(r(?<=[\