javascript - regex:search character still not perfect -


मुझे यह कोड है:

  & lt; script type = "text / javascript" & gt ; Var str = "KD-R35H2UND"; Var पट 1 = / [जी | टी | ईई | ईजेयू]। * डी / आई; document.write (str.match (patt1)); & Lt; / स्क्रिप्ट & gt;  var patt1 = ...  पर कोड का उपयोग कर मैं इस तरह से दिखा सकता हूँ: 

  अगर मैं केडी-आर 35ईडी टाइप करता हूं = & gt; ईडी केडी-आर35 यूड = & gt; यूएनडी केडी-आर 35 जेडी = & gt; जद केडी-आर 35 टीजेडी = & gt; टीजेडी केडी-आर35ईड = & gt; मेरी समस्या है: अगर मैं  KD-R35GD  टाइप कर सकता / सकती हूं तो  जीडी  दिखा सकता है लेकिन अगर  KD-R35D  यह कुछ भी नहीं दिखा सकता है..यह कैसे काम करता है?   

बी * का अर्थ है "शून्य <"

के शून्य या अधिक घटनाओं का मिलान करें "इसका मतलब है" नई लाइन को छोड़कर किसी भी वर्ण से मिलान करें "।

[EE | EJU] का अर्थ है ", एक | , एक J या < कोड> यू "।

। * का अर्थ है "न्यूलाइन शून्य या अधिक बार को छोड़कर किसी भी चरित्र से मेल खाएगा।"

डी मतलब " > डी "।

ऐसा करने के लिए आपने क्या कहा है regex कर रहा है।

  1. आपके प्रश्न में दिए गए उदाहरणों से, मैं अनुमान लगाता हूं कि वास्तविक नियम होना चाहिए:
    1. स्ट्रिंग केडी-आर 35 से शुरू होता है ।
    2. किसी भी संख्या में अल्फ़ान्यूमेरिक वर्ण का पालन हो सकता है, जब तक
    3. एक , एक j या U उनके बीच में है, और
    4. स्ट्रिंग डी में समाप्त होता है।

      ये नियम, एक regex के रूप में, पढ़ें:

        ^ स्ट्रिंग केडी-आर 35 # शाब्दिक पाठ का # प्रारंभ (# कैप्चरिंग समूह \ w * # अल्फ़ान्यूमेरिक वर्णों की कोई भी संख्या [ईजेयू] # कम से कम ई, जे,  

      या, जावास्क्रिप्ट में:

       

      या यू \ w * # अल्फ़ान्यूमेरिक वर्णों की कोई संख्या # कोड> मैच = विषय। मैच (/ ^ केडी-आर 35 (\ w * [ईजेयू] \ डब्ल्यू * डी) $ / i); अगर (मैच! = नल) {// सफल मैच mytext = मैच [1] // कैप्चरिंग समूह 1} और {// मैच का प्रयास विफल हुआ}

मैं उस ऊपरी / लोअरकेस कोई फर्क नहीं पड़ता।

संपादित करें: एर्म, आपका नया संपादन नियम बदलता है ऐसा लगता है कि जब तक यह KD-R35 से शुरू होता है और D में समाप्त होता है, तब तक किसी भी स्ट्रिंग की अनुमति दी जाती है। इस मामले में, regex बस / ^ केडी-आर 35 (\ w * डी) $ / i होगा।


Comments

Popular posts from this blog

windows - Heroku throws SQLITE3 Read only exception -

lex - Building a lexical Analyzer in Java -

python - rename keys in a dictionary -