2009-07-29 10 views
8

कोई मुझे बता रहा है कि मुझे पर्ल नियमित अभिव्यक्ति शाब्दिक में अर्धविराम से बचने की जरूरत है। यही है, एक अर्धविराम युक्त रेखा से मेल खाने के लिए, मुझे /\;/ का उपयोग करना चाहिए और /;/ नहीं होना चाहिए।क्या मुझे पर्ल नियमित अभिव्यक्ति शाब्दिक में अर्धविराम से बचने की ज़रूरत है?

जो मैंने पढ़ा है, से अर्धविराम का नियमित अभिव्यक्ति शाब्दिक में कोई विशेष अर्थ नहीं है, इसलिए इससे बचने से अनावश्यक लगता है। मैंने कुछ प्रयोग किए हैं और /;/ ठीक काम करने लगते हैं। चेतावनियों के साथ चालू हो गया और use strict; प्रगा प्रभाव में, perl शिकायत नहीं करता है।

क्या कोई कारण है /\;//;/ से बेहतर है? क्या यह संस्करण-निर्भर है?

उत्तर

1

इससे बचने की कोई आवश्यकता नहीं है।

12

नियमित अभिव्यक्ति पैटर्न में अर्धविराम से बचने की बिल्कुल आवश्यकता नहीं है। लगभग दस वर्षों में ऐसी ज़रूरत नहीं है मैंने पर्ल का उपयोग किया है और मुझे संदेह है कि वहां कभी भी था।

विशेष वर्णों और भागने के दृश्यों का एक संक्षिप्त सारांश perldoc perlreref में पाया जा सकता है।

1

सं। /;/ हमेशा ठीक काम करना चाहिए।

3

शायद यह एक आदत है जो कमांड लाइन पर पर्ल वन-लाइनर का उपयोग करने और उद्धरण नहीं दे रही है, इसलिए ';' बाकी को दूसरे आदेश में विभाजित करें? वैसे भी, हर किसी की तरह कहते हैं, कोई ज़रूरत नहीं है।

+0

@ जेफ्रोमी हम्मम्म ... यह एक अच्छा अनुमान की तरह लगता है। मैं खो गया था कि क्यों कोई सोचता है कि ऐसी आवश्यकता थी। –

5

शायद कोई सोचता है कि अर्धविराम से बचने की आवश्यकता है क्योंकि उनके संपादक का वाक्यविन्यास हाइलाइटिंग एम्बेडेड सेमीकॉलन द्वारा भ्रमित हो जाता है। मेरे अनुभव में, अधिकांश संपादकों को पर्ल के वाक्यविन्यास से मुकाबला करने में बहुत परेशानी होती है। याद रखें, Only perl can parse Perl

+0

@Adam एक और अच्छा अनुमान है। –

+1

ओटीओएच, http://search.cpan.org/perldoc/PPI –

+0

वाह के बारे में मत भूलें, पीपीआई शानदार दिखता है। और यह अच्छी तरह से लिखित दस्तावेज़ीकरण का एक अच्छा उदाहरण है, जिसमें एक अच्छा विवरण शामिल है कि पेर्ल को पार्स करना इतना कठिन क्यों है। –

0

हाँ, अर्धविराम मेटा चरित्र नहीं है, इसलिए मुझे लगता है कि इसे बचने की आवश्यकता नहीं है।

+0

@jeje क्यों अनुमान लगाते हैं? –

+0

@sinan कारण मैंने जवाब देने से पहले जांच नहीं की :) – jeje

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