2010-04-10 9 views
5

मैं एक XSD कुछ regex इनपुट डेटा की जाँच के लिए इस्तेमाल किया पैटर्न युक्त खिलाफ एक एक्सएमएल फ़ाइल को पार्स कर रहा हूँ, लेकिन केवल इस regex एक त्रुटि उत्पन्न करता है, भले ही यह ग्रहण XSD प्लगइन में गुजरता है:regex पैटर्न के साथ XSD का उपयोग कर एक्सएमएल सत्यापित किया जा रहा

InvalidRegex: Pattern value 
    '(((com|org)\.)+(\b[a-z]+[.]{1}\b)+)?[A-Z]{1}[A-Za-z]+' 
    is not a valid regular expression. The reported error was: 
    'This expression is not supported in the current option setting.'. 

तो अगर समस्या सुरक्षित रूप से हटाई जा सकती है, तो SAX सत्यापनकर्ता के साथ, मुझे घातक "वर्तमान विकल्प सेटिंग" कहां मिल सकती है?

+0

आपका एक्सएमएल कहां है, इसलिए हम उस संदर्भ को देख सकते हैं जिसमें वह प्रतिबंध एक त्रुटि उत्पन्न कर रहा है? –

+0

ध्यान दें कि '{1}' छोड़ा जा सकता है। –

+1

redtant {1} को ठीक करने के लिए टीएनएक्स। वर्तमान में यह अब कोई समस्या नहीं है क्योंकि मैंने हल किया जब मैंने देखा कि "\ b ... \ b" को हटाकर यह त्रुटियों के बिना काम करता है। लेकिन अब मुझे यह जानकर उत्सुकता है कि मैं "विकल्प सेटिंग" कहां सेट कर सकता हूं, यह जानना उपयोगी हो सकता है कि इन छिपी हुई सेटिंग्स में हेरफेर करना है। –

उत्तर

2

\b डब्ल्यू 3 सी द्वारा specified के रूप में XML Schema रेगेक्स स्वाद द्वारा समर्थित नहीं है। त्रुटि संदेश का तात्पर्य है कि आप सेटिंग को बदलकर इसे किसी भी तरह से उपयोग कर सकते हैं, लेकिन फिर आप एक गैर-मानक सुविधा का उपयोग करेंगे, जो एक्सएमएल का उपयोग करने के उद्देश्य को हरा देगा।

मुझे यकीन नहीं है कि त्रुटि संदेश वास्तव में क्या है, लेकिन अगर यह केवल रेगेक्स अमान्य था तो यह अधिक उपयोगी होता। अपने आप को एक पक्ष बनाओ और अपने एक्सएसडी में \b का उपयोग करने के बारे में भूल जाओ। और यदि आप पहले से नहीं हैं तो regular-expressions.info साइट के बाकी हिस्सों को देखें - यह एक महान संसाधन है।

संबंधित मुद्दे