2011-01-26 15 views
9

"नियमित अभिव्यक्ति" वाक्यांश में "नियमित" का क्या अर्थ है?रेगेक्स/"नियमित अभिव्यक्ति" में नियमित रूप से क्या मतलब है?

मैंने सुना है कि regexes एक समय में नियमित रूप से थे, लेकिन अब नहीं

+0

क्या नियमित अभिव्यक्तियों के कोई पहलू नियमित नहीं हैं?/एक नियमित भाषा से मेल नहीं खाए जाने के लिए डिज़ाइन किया गया है? – barlop

उत्तर

11

नियमित में नियमित अभिव्यक्ति से यह एक regular language से मेल खाता है आता है।

regular expressions used in formal language theory की अवधारणा PCRE जैसे इंजन नियमित अभिव्यक्तियों से अलग है। पीसीआरई और अन्य समान इंजनों में lookahead, conditionals और recursion जैसी सुविधाएं हैं, जो उन्हें गैर-नियमित भाषाओं से मेल खाने में सक्षम बनाती हैं।

+0

तो मुझे लगता है कि बीआरई दिनों में, यह अभी भी नियमित था। कोई सशर्त नहीं ईआरई ने फिर सशर्त जोड़ा .. इसलिए वे अनियमित भाषाओं से मेल खाने में तकनीकी रूप से सक्षम हो गए। क्या यह सही लगता है? – barlop

+1

@barlop नहीं, पॉज़िक्स बीआरई के पास संदर्भ हैं, और बैक-रेफरेंस एक गैर-नियमित सुविधा हैं। – hobbs

+0

@ हॉब्स मुझे लगता है कि बैकरेफर अनियमित व्याकरण की पूर्ति नहीं करते हैं, हालांकि 'क्योंकि वे वास्तव में पार्सिंग से संबंधित नहीं हैं, वे प्रतिस्थापित करने के लिए हैं। व्याकरण के साथ क्या करने की जगह है? यह व्याकरण का पालन करने के लिए बिल्कुल नहीं है, इसलिए यह सशर्त या लुकहेड – barlop

4

यह नियमित भाषा से आता है। यह औपचारिक भाषा सिद्धांत का हिस्सा है। अन्य औपचारिक भाषाओं के लिए Chomsky hierarchy देखें।

1

यह संकेत दे रहा है कि यह एक नियमित भाषा है।

रेगेक्स अभी भी लोकप्रिय हैं। कुछ लोग उन पर फहराते हैं लेकिन वे कुछ प्रकार के तारों से मेल खाने के तरीके को त्वरित और आसान बनाते हैं (यदि आप जानते हैं कि उनका उपयोग कैसे करें)। वैकल्पिक रूप से तारों के माध्यम से कोड लूपिंग की एक अच्छी कुछ पंक्तियां होती हैं और आपको आवश्यक बिट्स निकालने की बहुत अच्छी चीजें होती हैं जो बहुत नास्टियर होती है!

मैं अब भी आपको एक नियमित केस (पन पूरी तरह से इरादा) आधार पर उपयोग करता हूं, ताकि आप एक प्रयोग का मामला दे सकें, जिसे मैंने गिटार chords की रेखाओं से मेल खाने के लिए एक दूसरे दिन इस्तेमाल किया था। इन्हें आमतौर पर ईमेल पते और जैसे मूलभूत सत्यापन जैसे चीजों के लिए भी उपयोग किया जाता है।

वे निश्चित रूप से मृत नहीं हैं।

+0

ओपी ने यह सुझाव नहीं दिया था कि वे अब उपयोग नहीं किए गए थे, बस वे नियमित नहीं थे, जिन्हें अन्य ने पुष्टि की है। –

1

मुझे लगता है कि यह व्याकरण कि नियमित अभिव्यक्ति का वर्णन के वर्ग के लिए शब्द से आता है: नियमित व्याकरण (या "नियमित" भाषाओं)। जहां शब्द की संभावना है विकिपीडिया की यात्रा से संभवतः उत्तर दिया जाता है।

आधुनिक रेगेक्स इंजन जो उन सभी फैंसी लुक-फॉरवर्ड, पैटर्न री-मैच और सबएक्सप्रेस गिनती सुविधाओं को लागू करते हैं, ठीक है, वे व्याकरण की कक्षा को पहचान रहे हैं जो नियमित व्याकरण का सुपरसैट है। "शास्त्रीय" नियमित अभिव्यक्ति सैद्धांतिक मशीनों के यांत्रिक तरीकों से मेल खाते हैं जिन्हें "परिमित ऑटोमाटा" कहा जाता है। यह वास्तव में और अपने आप में एक मजेदार विषय है।

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