चलो मदद करते हैं!
किसी भी Windows खोज समस्या के लिए मेरी सिफारिश दो बातें हैं:
- AQS (उन्नत क्वेरी सिंटैक्स) प्रलेखन पढ़ें , ताकि आप जान सकें कि सभी विशेष वर्ण क्या करते हैं।
- यह जान लें कि Windows खोज आपकी क्वेरी को सटीक AQS में बदल देगा और जब तक आप अपने प्रश्नों में विशिष्ट नहीं होते हैं, तब तक Windows का अनुमान होगा कि AQS का वास्तव में क्या मतलब है। परिणाम आश्चर्यजनक हो सकते हैं!
सबसे पहले, AQS पर कुछ मूल बातें
डिफ़ॉल्ट रूप से, स्ट्रिंग फ़ाइल गुण (फ़ाइलनाम, लेखक, आदि) के साथ खोज करते हैं COP_WORD_STARTSWITH
$<
, इसलिए कोई भी शब्द (द्वारा spaces , - _ () []
और अधिक) जो कि उनके खोज शब्द से शुरू होता है। अन्य गैर-स्ट्रिंग गुण (डेट्स, आदि) COP_EQUAL
=
डिफ़ॉल्ट रूप से (या वाइल्ड कार्ड, *
और ?
शाब्दिक हैं) के साथ या सटीक मिलान खोजते हैं।
दूसरा, यदि आप किसी भी अनुक्रमित स्थान में खोज कर रहे हैं , तो आपकी क्वेरी में सभी गैर-अनुक्रमित स्थान नहीं दिखाए जाएंगे।
तीसरा, एड्रेस बार पर क्लिक करके देखें कि AQS विंडोज सर्च ने वास्तव में क्या खोजा है। आप स्थान टुकड़ों और प्रदर्शन-नाम को अनदेखा कर सकते हैं: यह प्रतिशत एन्कोडेड होगा, इसलिए https://www.url-encode-decode.com/ जैसी साइट पर डिकोड करें
चौथा, अविभाजित *
और ?
AQS में अप्रत्याशित रूप से तब तक व्यवहार करते हैं जब तक कि वे एक ~
COP_DOSWILDCARDS
क्वेरी में नहीं होते हैं (मतलब गैर-शब्द के साथ शुरू होता है, और वाइल्ड कार्ड *
या ?
व्याख्या की जाती है)। विंडोज खोज आमतौर पर खोजों को ~
क्वेरी में बदल देती है। उदाहरण के लिए, यह वाइल्ड कार्ड लगता है **
और ?
अल्फ़ान्यूमेरिक वर्णों के साथ स्ट्रिंग गुण खोजते हैं ~
, लेकिन **
अल्फ़ान्यूमेरिक्स के बिना कुछ भी नहीं खोजता है। इसके अलावा *
गैर- ~
प्रश्नों में एकल को वाइल्डकार्ड के रूप में माना जाता है COP_WORD_STARTSWITH
$<
।
अपने प्रश्नों का विश्लेषण करते हैं
(
AQS search-ms:displayname=Search Results in Users&crumb=&crumb=location:C:\Users
सरलीकृतcrumb=
ठीक है, (
जब आप उपयोग करते हैं AND
या OR
आप कुछ भी समूहीकृत नहीं करते हैं, तो unquoted एक समूहीकरण ऑपरेटर है , इसलिए Windows का मानना है कि समूह का मतलब है कि कुछ भी नहीं खोजें।
*(*
AQS crumb=
अधिकांश विंडोज़ खोजें जो *
विंडोज़ के साथ शुरू होती हैं, वे एक crumb=~~query_term
(एक खोज में शामिल हैं) में बदलने की कोशिश करती हैं । *
एक क्वेरी में सामान्य माना जाता है। वैसे भी, इस मामले में आप कुछ भी नहीं के एक समूह को वाइल्ड कार्ड देते हैं, इसलिए विंडोज कुछ भी नहीं (या सब कुछ!) के सभी समूहों की खोज करता है।
"("
AQS crumb=System.Generic.String:"("
उद्धरण सटीक वाक्यांशों के लिए खोज करते हैं (संपूर्ण शब्द या संपत्ति मेल खाना चाहिए) और इसके अलावा शाब्दिक वर्ण हैं *
, ?
और ""
बन जाते हैं "
। यह उन शब्दों को खोजता है जो इसके साथ शुरू होते हैं (
, लेकिन चूंकि (
यह शब्द केवल उन गुणों की खोज नहीं करता है जो अभी हैं(
*"("*
AQS crumb=Rating:(>=1 <13) OR System.Generic.String:** System.Generic.String:"("*
यह एक पागल है, लेकिन विंडोज सर्च *
कुछ विशेष वर्णों द्वारा स्टार रेटिंग के रूप में उपसर्ग को बदलने की कोशिश करता है । १-१३ १ तारा है। मेरे परीक्षण से भी ध्यान दें, **
बिना किसी अल्फ़ान्यूमेरिक वर्ण के पहले या बाद में यह वाइल्ड कार्ड के बजाय कुछ भी नहीं खोजता है और अप्रत्याशित है।
इस पूरी क्वेरी का मतलब है
(1 स्टार रेटिंग या वर्ड जो कुछ भी नहीं से शुरू होता है) और गुण जो बस हैं (
। *
कोई भी अन्य वर्णों से मेल नहीं खाएगा क्योंकि पूरी संपत्ति होनी चाहिए (
।
सरलीकृत इसका अर्थ है, 1 सितारा फाइलें (
**
क्वेरी में वास्तव में (
मेरे लिए एक नॉन-वन स्टार फ़ाइल दिखाई गई, लेकिन जब इसे वापस और इसे बदलने के **
लिए अपेक्षित परिणाम नहीं मिला ( अप्रत्याशित है)***
**
**
अन्य उत्तर
~="("
AQS crumb=System.Generic.String:~="("
यह काम नहीं किया, अगर खोज की मात्रा बहुत गहन है, तो विंडोज़ को कुछ भी नहीं लगता है। filename:~="("
काम करेगा। अनिवार्य रूप से एक फ़ाइल नाम खोजें जिसमें बस (
कहीं है
"*(*"
AQS crumb=filename:~~"*(*" OR System.Generic.String:"*(*"
यह काम किया। फिल्नाम में *(*
वाइल्ड कार्ड या कोई भी संपत्ति शब्द होता है जो वाइल्ड कार्ड से शुरू होता है और ए (
। ध्यान दें, दोनों ~=
का ~~
मतलब होता है।