2011-11-30 16 views
10

मैं एक जेएस पार्सर लिख रहा हूं, और सोच रहा हूं कि एक नियमित अभिव्यक्ति (/lookup/g) और सरल विभाजन (bar/baz/g) के बीच अंतर कैसे करें। नियमित अभिव्यक्तियों की पहचान करने के लिए जावास्क्रिप्ट का उपयोग करने वाले नियम क्या हैं?जावास्क्रिप्ट नियमित अभिव्यक्तियों का पता कैसे लगाता है?

+1

पिछली '/'? –

उत्तर

10

आप ईसीएमए स्पेक में Section 7.8.5 को देखना चाहते हैं (एनोटेटेड संस्करण वर्तमान में अद्यतित है, लेकिन हमेशा latest PDF from the ECMA देखें)।

यह भी याद रखें कि एक जावास्क्रिप्ट regex खाली नहीं हो सकता है। //हमेशा एक पंक्ति टिप्पणी की शुरुआत है। यह भी उल्लेखनीय है कि एक अर्धविराम को रेगेक्स शाब्दिक से पहले कभी नहीं डाला जाना चाहिए।

टैंगेंशियल, खाली जावास्क्रिप्ट रेगेक्स /(?:)/ जैसा दिखता है।

Further discussion

+0

ध्यान दें कि व्याकरण [नवीनतम संस्करण] (http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf) में थोड़ा सा बदल गया है। –

+0

@AndrewMarshall: अगर मैं HTML प्रारूप में था तो मैं उससे जुड़ा होगा - क्या आपको पता है कि कोई मौजूद है या नहीं? धन्यवाद। – alex

+0

हाँ, यही कारण है कि मैंने सोचा कि आप इसके बजाय उस संस्करण से जुड़े होंगे। और दुर्भाग्य से नहीं, मैं नहीं करता हूं। मैं बस पूर्णता के लिए नवीनतम संस्करण में लिंक जोड़ना चाहता था। –

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