বর্গের মতো শব্দের ক্রম সংরক্ষণ করার জন্য '% প্যাটার্ন%' বিবৃতিতে আমি আইরেজেক্স ব্যবহার করি, উদাহরণস্বরূপ:
qs = table.objects.filter(string__iregex=pattern.replace(' ', '.*'))
স্ট্রিং পদ্ধতিগুলি অপরিবর্তনীয় তাই আপনার প্যাটার্নের চলকটি পরিবর্তন হবে না এবং এর সাথে * you'll আপনি কোনও বর্ণের 0 বা ততোধিক ঘটনা আবিষ্কার করবেন তবে ব্রেক লাইনগুলি।
নিদর্শন শব্দের সাথে পুনরাবৃত্তি করতে নিম্নলিখিতটি ব্যবহার করে:
qs = table.objects
for word in pattern.split(' '):
qs = qs.filter(string__icontains=word)
আপনার প্যাটার্নে শব্দের ক্রম সংরক্ষণ করা হবে না, এমন কিছু লোকের জন্য যা কাজ করতে পারে তবে ক্ষেত্রে বর্গের মতো বর্গের নকল করার চেষ্টা করার ক্ষেত্রে আমি প্রথম বিকল্পটি ব্যবহার করব।
result = table.objects.filter(string__icontains='pattern')