पाठ फ़ाइलों को पार्स करने का एक कारण यह है कि पर्ल एक शानदार डेटा माइनिंग और स्क्रिप्टिंग टूल बनाता है।
जैसा कि आप नीचे देखेंगे, पर्ल का उपयोग मूल रूप से पाठ के एक समूह को पुन: स्वरूपित करने के लिए किया जा सकता है। यदि आप पाठ के पहले भाग और फिर पृष्ठ के निचले भाग में अंतिम भाग को देखते हैं, तो आप देख सकते हैं कि बीच का कोड वह है जो पहले सेट को दूसरे में बदलता है।
पाठ फ़ाइलों को पार्स करने के लिए कैसे
एक उदाहरण के रूप में, चलो एक छोटा सा प्रोग्राम बनाते हैं जो एक टैब से अलग की गई डेटा फ़ाइल को खोलता है, और उन कॉलमों को पार्स करता है जिनका हम उपयोग कर सकते हैं।
एक उदाहरण के रूप में कहें, कि आपका बॉस आपके नाम, ईमेल और फ़ोन नंबर की सूची के साथ एक फ़ाइल सौंपता है, और आपको पढ़ना चाहता है फ़ाइल और जानकारी के साथ कुछ करें, जैसे कि इसे डेटाबेस में रखें या बस इसे अच्छी तरह से फॉर्मेट में प्रिंट करें रिपोर्ट good।
फ़ाइल के कॉलम TAB वर्ण के साथ अलग किए गए हैं और कुछ इस तरह दिखाई देंगे:
यहां पूरी सूची दी गई है जिसके साथ हम काम करेंगे:
#! / Usr / bin / perl
खुला (फ़ाइल, 'data.txt');
जबकि () {
chomp;
($ नाम, $ ईमेल, $ फोन) = विभाजन ("\ t");
प्रिंट "नाम: $ name \ n";
प्रिंट "ईमेल: $ ईमेल \ n";
प्रिंट "फोन: $ फोन \ n";
प्रिंट "\ n";
}
बंद (फ़ाइल);
बाहर जाएं;
ध्यान दें: यह कुछ कोड को ट्यूटोरियल से खींचता है कैसे पर्ल में फ़ाइलों को पढ़ने और लिखने के लिए.
यह पहले क्या करता है एक खुला है फ़ाइल data.txt कहा जाता है (जो पर्ल स्क्रिप्ट के समान डायरेक्टरी में रहना चाहिए)। उसके बाद, यह फ़ाइल को catchall चर $ _ लाइन में लाइन द्वारा पढ़ता है। इस मामले में, $ _ है गर्भित और वास्तव में कोड में उपयोग नहीं किया गया।
एक पंक्ति में पढ़ने के बाद, कोई भी व्हाट्सएप है chomped इसके अंत से दूर। फिर, विभाजन वर्ण का उपयोग टैब वर्ण पर रेखा को तोड़ने के लिए किया जाता है। इस स्थिति में, टैब को कोड द्वारा दर्शाया जाता है \ t. विभाजन के संकेत के बाईं ओर, आप देखेंगे कि मैं तीन अलग-अलग चर का एक समूह प्रदान कर रहा हूं। ये रेखा के प्रत्येक स्तंभ के लिए एक का प्रतिनिधित्व करते हैं।
अंत में, प्रत्येक चर जिसे फ़ाइल की लाइन से अलग किया गया है, अलग से मुद्रित किया जाता है ताकि आप देख सकें कि प्रत्येक कॉलम के डेटा को व्यक्तिगत रूप से कैसे एक्सेस किया जाए।
स्क्रिप्ट का आउटपुट कुछ इस तरह दिखना चाहिए:
नाम: लैरी
ईमेल: [email protected]
फोन: 111-1111
नाम: घुंघराले
ईमेल: [email protected]
फोन: 222-2222
नाम: मो
ईमेल: [email protected]
फोन: 333-3333
हालांकि इस उदाहरण में हम केवल डेटा प्रिंट कर रहे हैं, यह एक पूर्ण डेटाबेस में TSV या CSV फ़ाइल से पार्स की गई समान सूचना को संग्रहीत करना बहुत आसान होगा।