कम्प्युटरकार्यक्रम

नियमित अभिव्यक्ति (PHP)। PHP: नियमित अभिव्यक्ति उदाहरण

कति ठूलो र जानकारी को विविध विश्व, जस्तै चाँडै, यो विस्तार र विकास। कुनै पनि निर्णय - आन्दोलन समग्र प्रक्रियामा मात्र बिन्दु। ज्ञान र अनुभव सम्भव लक्ष्य प्राप्त गर्न प्रक्रिया बुझ्न बनाउन, तर कहिल्यै - यसको उपलब्धिहरू को छैन परिणाम। यसलाई हामी परिणाम मा foreseeable भविष्यमा बोल्न सक्छन् कि सन्देहपूर्ण छ, तर यो यसको लागि प्रयास प्रक्रिया एक महत्वपूर्ण र objectively आवश्यक प्रक्रिया महत्त्वपूर्ण छ।

"इच्छा र / वा पैसा धेरै" उहाँले गरिरहेको थियो के सोच्न गर्छ विशेष गरी जब कि सक्षम एक अल्गोरिदम सिर्जना गर्दैन, र पाठ्यक्रम "मुक्त" मानिस गर्छ। कुनै पनि अवस्थामा जानकारी समस्या तिनीहरू सबै सेतो फूल हो कि आवश्यक कम्तिमा एक अन्धा स्थान छ, तर उहाँको लागि, सामान्यतया तुरुन्तै, अरूलाई सफा दाग देखिने छन्, र।

इन्टरनेट प्रविधिको जानकारी पहुँच सरलीकृत छ, तर प्रश्न छ - कसरी इच्छित भइरहेको मा राख्न - सरलीकृत गर्न, र कामको प्राप्त नयाँ "मात्रा"। र हुनत PHP नियमित अभिव्यक्ति खाली स्पष्ट निकास छैन, तिनीहरूले अगाडि एक महत्वपूर्ण चरण हो।

सरल कार्य + अल्गोरिदम = ढाँचा

नियमित अभिव्यक्ति भेटी, PHP अल्गोरिदम एकदम सामग्री कम गर्छ, तर सामान्य खोज कार्य / प्रतिस्थापन र प्रशोधन एल्गोरिदम आफ्नो महत्त्व नष्ट भेटिएन। नयाँ विचार जानकारी क्रान्तिको portend छैन। अपेक्षा गर्न सकिन्छ कि सबै भन्दा - संकुचित कोड र विकासकर्ता सही एउटा खोज प्रश्न तैयार गर्ने क्षमता बढ्छ।

तपाईंलाई थाहा र PHP नियमित अभिव्यक्ति मा लागू गर्नुपर्छ। उदाहरण पत्यार पार्र्ने र प्रभावकारी। हुनत वास्तवमा सरल खोज कार्य, अवस्था, loops, र अन्य संचालक को एक सेट द्वारा प्रतिस्थापित, संयन्त्र एक प्रकारको - तर यो नयाँ खोज इन्जिन को आगमन संग, गुरुत्वाकर्षण को केन्द्र नमुना गर्न सारे भन्ने रिपोर्ट दिनुपर्छ।

छ:

  • गुणस्तर र आधुनिक उपकरण - यो राम्रो छ;
  • हेर्न र सहयोगिहरु को अनुभव प्रयोग कुरा छ;
  • सफलता को एक ग्यारेन्टी - वास्तविकता र भर्चुअल विचार संयोजन।

यो समाधान गर्न, समस्या बुझ्न आवश्यक थियो कसरी ज्ञान हासिल गर्ने, यो विशिष्ट परिणाम भन्दा अक्सर थप महत्त्वपूर्ण छ।

PHP मा नियमित अभिव्यक्ति भाषा विन्यास मा कार्यहरु को एक नम्बर र इन्टरनेटमा उपयोगी उदाहरणहरू धेरै प्रतिनिधित्व छन्। किनभने विन्यास को विशिष्ट आवेदन विकल्पहरू मात्र विकासकर्ता को कल्पना गरेर सीमित छन्, तर मन मा टेम्प्लेट को सबै काम गर्नेछ भनेर राख्न sleuet। नियमित अभिव्यक्ति को PHP प्रमाणीकरण प्रयोग आवश्यक छ।

सरल खोज वर्ण (स्ट्रिङ)

प्रतीक - यो सधैं एक बाइट छ, र एक चिप, प्रायः एक प्रतीक हो, साथै एक सटीक अर्थ छ। इन्कोडिङ को निर्दिष्ट गर्दछ फरक कोड देखिने वर्ण। प्रतीकको धेरै विकल्प हुन सक्छ: "$" = "USD" = "USD", ... - कि कतै केहि को सही अर्थ छ, तर आवश्यक नजिक छैन, कारण मुद्रा गर्न। तर, सही अर्थ जो सधैं वर्ण "$" सँग सुरू हुन्छ चल PHP, मा झूठ हुन सक्छ, तर "USD" र "USD" शुरू गर्न सकिँदैन।

कार्यक्रम को प्रतीक एक समारोह नाम (स्ट्रिङ) को सन्दर्भ मा हुन सक्छ: पहिचान र पूरा - संरचना, कार्य, PHP नियमित अभिव्यक्ति निर्णयहरू लागि सीधा प्रयोग गर्दा यो गतिशील वस्तु-उन्मुख कार्यक्रम देखि छ। पाइने प्रतीक "पालैपालो", आफै यसलाई पाइन्छ जसमा ठाउँमा के निर्धारण, र यो छ बाटो, आवश्यक "उहाँले समझे" त्यो छ।

एक अक्षर / लाइन को लागि खोज - एक यस्तो सरल व्यायाम, र थप जानकारीको लागि, स्पष्ट राम्रो। यो खाना मूल्यहरु मा दस सबै भन्दा राम्रो, फेला पार्न स्वादिष्ट व्यञ्जनहरु जन्मदिनको केक चयन गर्नुहोस्, वा झूटा छत लागि ठेकेदार निर्धारण गर्न आवश्यक सधैं छैन।

एक सय साइटहरु - अक्सर यो सरल एल्गोरिदम सरल गणित जानकारी छैन वा चाहेको अक्षर डाटाबेस बाट चयन गर्न जब कठिन अवस्था, र लाइन मा जो यो पत्ता लगाउन आवश्यक छ अनुकूलन गर्न आवश्यक छ। साइटहरु खोज समय कुख्यात सयौं - मूल्य नमूना डेटाबेस समय देखि एक वर्ण, र जहाँ हेर्न को मूल्य चयन बराबर छ।

लोन प्रतीक - यो एक वाक्यांश छ, र केही वाक्य, उहाँले कहीं हुन र चाहेको जस्तो सानो हुन सक्छ। कसरी के फेला परेन इच्छित छ निर्धारण?

उदाहरण: मूल्यहरु लागि खोज

एक सानो - बस पाठ "$" प्रतीक पाउन। यो एक नम्बर सामना कि, यो सधैं पर्याप्त छ जाँच गर्नुहोस्। तपाईं प्रतीक "$" अगाडि बिन्दु वा नम्बर प्रदान यदि मौद्रिक प्रतीक अगाडि छन् जो मा मूल्यहरु खातामा लिएको हुनेछैन भन्ने एक ग्यारेन्टी छ। त्यहाँ पनि सामान्य मा मुद्रा निर्दिष्ट छैन जो मूल्य, हटाइएका छन्, तर पृष्ठमा स्पष्ट निर्देशन छ।

सामान्य मा, सामान्य तरिका मा समस्या को समाधान अल्गोरिदम र समय-खपत पहिचान परे फुल्नु। यसैबीच, नियमित अभिव्यक्ति प्रयोग गरेर PHP को संख्या कुनै समस्या पाउनुहुनेछ।

$ CContents = preg_match_all ( "/ [0-9] + ([\ $] | USD | वाई \ £ \ | ue) {1} / म।";

"ई-मेल हेर - 2usd;
";
"फेला ई-मेल - 2u.e;
।";
"कार्य ई-मेल - ue2;
";
"ई-मेल चेक - $ 13", $ aResult);
। '; '। implode ( ',', $ aResult [0])। '
'।

जवाफ हुनेछ: "2; 2usd, 2u.e.", तर लाइन मा केहि फेला गर्नुभयो: "जाँच ई-मेल - $ 13"

अगाडि वा वर्ण पछि ढाँचा उपस्थिति लागि प्रदान, तपाईं सफलता प्रायजसो छिटो हासिल गर्न सक्नुहुन्छ।

$ CContents = preg_match_all ( "/ ([0-9] + ([\ $] | USD | वाई \ £ \ |। Ue) {1}) | (([$] | USD | वाई \ £ \। | ue) {1} [0-9] +) / म ";
"ई-मेल हेर - 2usd;
";
"फेला ई-मेल - 2u.e;
।";
"कार्य ई-मेल - ue2;
";
"ई-मेल चेक - $ 13", $ aResult);
। '; '। implode ( ',', $ aResult [0])। '
'।

परिणाम: "4; 2usd, 2u.e., ue2, $ 13"

अनभिप्रेत तर्क बारेमा

नियमित अभिव्यक्ति PHP प्रस्ताव, साथै अन्य उपकरण, तर यो आवश्यक छैन यसको नियम अनुसार तिनीहरूलाई लागू वा सानो विन्यास तरिका प्रदान अन्य कार्यहरु प्रयोग गर्न।

सम्भव पूर्व मापदण्ड अनुसार घटक मा तल भङ्ग सरणी बारी गर्न आवश्यक खोज, र हामी खोजी ठाउँमा, को शुरुवात अघि। बस एक जोडी विस्फोट () र implode () अक्सर सरल र निर्णय गति।

उदाहरणका लागि, प्रारम्भिक काम फलस्वरूप हरेक गाउँमा संकलित कति आलु मा तार (डाटा) जिल्ला को एक एरे गठन: अज्ञात ImyaDerevnya र संकलित मात्रा र देश तार को एक एरे धेरै कम्पनीहरु चल्छ भने मार्फत ImyaDerevnya.ImyaPredpriyatie र मूल्य छ "; " र सबै उद्यम यति। ";" ImyaDerevnya / ImyaDerevnya.ImyaPredpriyatie - - - आकार को एक संग्रह मार्फत हस्तान्तरण गरिनेछ जसमा जोडी एक लामो लाइन, हुनेछ; ($ aResult, ""), यस मामला मा संकलित सम्भव छैन कुल रकम गणना, तर तपाईं impode भने। एक उल्टो के परिणाम, विस्फोट ( ";", $ aResult) - संकलित र यसलाई संकलित कसरी, र त्यसपछि सबै गैर-संख्यात्मक वर्णहरू देखि रेखाहरू उखेलेर, हामी मात्र संख्या भएका सबै को एक एरे, जो योगफल संकलित कुल मात्रा छ।

यो उदाहरणमा, PHP मा नियमित अभिव्यक्ति, धेरै हेर्न अनुमति गर्न तिनीहरूले सजिलो र किफायती निकाल्ने इच्छित संख्यात्मक मान छन्। चाँडै र कुशलतापूर्वक, कुनै कुरा कसरी लामो यो गाउँमा र व्यवसायीहरूको नाम हुन सक्छ। यो समाधान आदर्श छैन, तर यो सधैं नियम हुनुपर्छ पालन गर्दैनन् भनेर देखाउँछ। यो एक असामान्य तरिका मा इच्छित हासिल गर्न सम्भव अक्सर छ।

प्रौद्योगिकी पक्ष बाट Abstracting, इन्कोडिङ

यस तर्कको विन्यास यो वास्तविकता मा कस्तो देखिन्छ भन्न गर्दैन। तथापि, पृष्ठ को नै इन्कोडिङ प्रदान र पङ्क्तिहरू लिपि (खोजे जो जो तस्बिरहरू मा) समस्या मा प्रवेश गर्न सक्छन् यसको प्राविधिक पक्षमा छ।

एक मात्र कहाँ यो गर्न, जब, परिवर्तन गर्न के कति र कसरी के को लागि हेर्न थाहा हुँदैन, तर। औपचारिक यसको आफ्नै पूर्ण पूर्ण-विशेष संयन्त्र रूपमा कार्यान्वयन नियमित अभिव्यक्ति PHP, तर धेरै कारण, धेरै भाषामा यसको समकक्षों को बोध फरक। एक सामान्य नियम जस्तै, तपाईं एक विशिष्ट कार्य को लागि एक विशेष उपकरण वातावरणमा एक विशेष ढाँचा अघि, यो आवश्यक छ, उच्च गुणस्तरीय मिलाइएको पूरा स्रोत डाटा लागि सबै सम्भव विकल्पहरू जाँच गर्नको लागि हो।

तपाईं PHP मा विकास तपाईँको आफ्नै अनुभव प्रयोग गर्नुहुन्छ भने पनि, नियमित अभिव्यक्ति, उदाहरणहरू टेम्प्लेट र डिजाइन होसियार जाँच आवश्यक छ। गतिशील भाषा कार्यक्षमता, विन्यास र रनटाइम परिवर्तन।

एक टेम्पलेट को संरचना र सामग्री

के पहिले खोज कार्य, संयोजन को रूप मा लेखिएको थियो conditionals, नियमित अभिव्यक्ति ढाँचा - प्रतिस्थापन सञ्चालन, सम्मिलित, मेटाउने, केही नियम अनुसार वर्ण को एक स्ट्रिङ हो। वास्तवमा, एक महत्वपूर्ण राशि एक निश्चित तरिका मा सङ्केतन र विशेष नियमहरू कार्यान्वयन छ।

यसलाई कुनै पनि डिबग भाषा अपरेटर गर्न असम्भव छ जस्तै तपाईं नियमित अभिव्यक्ति ढाँचा डिबग गर्न सक्दैन, यो प्रक्रिया मात्र अनुकरण गर्न सक्छन्। एक सामान्य नियम संस्करण अपनाए रूपमा: काम गर्दछ - काम गर्दैन। विन्यास हुनत आफ्नो धारणा, विशेष गरी सुरुमा धेरै गाह्रो छ, धेरै सरल छ।

एक सरल अभिव्यक्ति एउटा उदाहरण

एक सरल embodiment मा, टेम्पलेट स्ट्रिङ मेल खाने:

$ CContents = preg_match ( "/ asdf / म", "asdf", $ aResult)। '; '। implode ( ',', $ aResult)।

मा पहिलो मेल खाने टेम्पलेट भेट समारोह यसको सञ्चालन पूरा भएकोले; "asdf 1" परिणाम हुनेछ। हामी लाइन मा लाइन "zzzasdfvvv" "aaaasdf" हेर यदि परिणाम, एउटै हुनेछ। तपाईं पहिलो र / वा अन्तिम वर्ण निर्दिष्ट भने, परिणाम स्पष्ट हुनेछ:

$ CContents = preg_match ( "/ ^ asdf / म", "asdf", $ aResult)। '; '। implode ( ',', $ aResult)। '
';
$ CContents। = Preg_match ( "/ asdf $ /", "asdf", $ aResult)। '; '। implode ( ',', $ aResult)। '
'।

परिणाम हुनेछ: 1; asdf1; asdf।

जहाँ सुरु गर्न र अन्त्य नमुनाको प्रतीक "*" र "$" संकेत गर्छ। परिणाम preg_match समारोह - त्रुटि पत्ता छ भने म्याचको संख्या, यो, हुन सक्छ 0, 1, वा गलत। तेस्रो विकल्प - एरे - मात्र फेला तत्व राख्नुभयो। preg_match_all प्रकार्य प्रयोग को मामला मा () खोज अन्त लाइन जारी।

$ CContents = preg_match ( "/ asdf / म", "asdf123asdf456asdf789", $ aResult)। '; '। implode ( ',', $ aResult)। '
';
$ CContents। = Preg_match_all ( "/ asdf / म", "asdf123asdf456asdf789", $ aResult)। '; '। implode ( ',', $ aResult [0])। '
'।

परिणाम:

1; asdf
3; asdf, asdf, asdf।

तपाईं विशेष निर्देशन प्रयोग गर्छन् भने, प्रत्येक वर्ण लाइन कोडिंग र टेम्पलेट कोडिंग बिना नै र यसको स्थान परिभाषित। प्रोग्रामर यी तत्व को इन्कोडिङ प्रत्येक अन्य र इन्कोडिङ पृष्ठ को सम्बन्ध मा सही थिए भन्ने सुनिश्चित गर्नुपर्छ।

नियमित अभिव्यक्ति काम गर्न PHP कार्यहरु

PHP को लागि नियमित अभिव्यक्ति एक निश्चित तरिका मा लेखिएको क्यारेक्टरस्ट्रिङ प्रतिनिधित्व गर्छ। सामान्यतया, अन्य कार्यक्रम भाषा संग analogy द्वारा, तिनीहरूले प्रतीक "/" ... "/" र उद्धरण चिह्न मा राखिएको, तपाईं एकल वा दोहोरो मा अल्गोरिदम आधारमा प्रयोग गर्न सक्नुहुन्छ मा लेखिएका छन्।

मुख्य समारोह PHP preg मिलान नियमित अभिव्यक्ति एक प्रत्यय _all संग तत्संबंधी एक भेद सबै मिलान पाता, दुवै ढाँचा मिलान प्रयोग र पहिलो स्थानमा यो बन्द र तत्संबंधी एरे रू। समारोह preg प्रतिस्थापन प्रतिस्थापन प्रत्येक एक टेम्पलेट मेल, यो खोज डिजाइन अनुमति दिने, arrays संग काम र विकल्प को एक किसिम को प्रतिस्थापन गर्न सक्दैन।

नियमित अभिव्यक्ति काम गर्न रोचक विकल्प कुनै प्रतिस्थापन पाठ लिन्छ कि preg_replace_callback समारोह, र यस्तो प्रतिस्थापन पूरा गर्नेछ जो समारोह, को नाम प्रयोग विकास गर्न सकिन्छ। व्यावहारिक मूल्य बाहेक तपाईं लागू गर्न सक्नुहुन्छ तंत्र, ढाँचा जाँच अन्तिम विकास र डिबग एक महत्वपूर्ण भूमिका खेल्छ भनेर।

नियमित अभिव्यक्ति को स्कोप

हाइपरटेक्स्ट भाषाहरू एक ठूलो हदसम्म जानकारी formalized भएकोले तिनीहरूले सुरूवात सामाग्री छन्। कि कुशलतापूर्वक डाटा को ठूलो रकम प्रशोधन गर्न अनुमति टेम्प्लेट र डिजाइन को एक ठूलो संख्या विकसित। यो काम एक महत्वपूर्ण भाग विभिन्न व्यवस्थापन प्रणाली सामग्री (CMS) मा निर्मित तंत्र गरिन्छ।

अचम्मको कुरा छैन, धेरै सीएमएस साइटहरु निर्माण र (अपडेट) सफ्टवेयर कम्पनीहरु सँगसँगै भइरहेको, तिनीहरूले आवश्यक बाहिर यसको आफ्नै मा ढाँचाको विकास बोक्नु भएको छैन लागि डे facto स्तर हुन्छन्। तर, यस्तो प्रणाली को बाहिर नियमित अभिव्यक्ति संग अनुभव धेरै उपयोगी छ छ।

नियमित अभिव्यक्ति र वास्तविक जानकारी

PHP पुस्तकालयहरु मा नियमित अभिव्यक्ति को आवेदन एउटा महत्त्वपूर्ण क्षेत्र आगमन PHPOffice गठन। कागजात, स्प्रेडसिट काम, र सधैं महत्त्वपूर्ण थियो र OOXML मानक वास्तविक कागजात फुकाल्नु गर्न मात्र होइन, तर पनि आफ्नो कार्यक्रम कोर्न गर्न सम्भव छ।

विशेष हाइपरटेक्स्ट र PHP भाषाहरूको विकास गर्न धन्यवाद, उदाहरणका लागि, कागजात "मानक रूप" को "उत्पादन" स्वचालित गर्न एक वास्तविक मौका छ, भुक्तान, रिपोर्टहरू, व्यापार योजना, र अन्य जानकारी वस्तुहरु लागि इनभ्वाइसहरू, संरचना र सामग्रीहरू वास्तवमा formalization र स्वचालन गर्न उत्तरदायी छन्।

नियमित अभिव्यक्ति को भाषा OOXML विकास प्रक्रिया वर्णन गर्न आवेदन जडान मा एकदम संग मार्कअप भाषा HTML परम्परागत काम र पहिलो स्थानमा CSS फरक छ। वास्तविक कागजात, अंकन बाहेक र वास्तविक सामग्री बाहेक विवरण को धेरै छ। उदाहरणका लागि, कार्यक्रम द्वारा स्वचालित रूपमा सिर्जना गरिएको कागजात, बलियो र सही सामग्री हुनेछ। कागजात गठन वा उपचार व्यक्ति, सामग्री हुनेछ, अधिक ट्याग अधिकता चित्रित थियो। कागजात संग कुनै पनि काम को अर्थ विज्ञान एक हुन सक्छ, तर फरक डिजाइन मा विभिन्न मात्रा मा चित्रित तथ्यलाई तिर जान्छ।

प्राकृतिक जानकारी र अवस्था

एक व्यक्ति सधैं फलस्वरूप जानकारी मंचन र, छ जो समस्या, को समाधान रुचि, एउटै जानकारी दिइनेछ। कागजात को रूप मा समस्या को कथन प्रस्तुत, एक व्यक्ति जो विशेषज्ञहरु को विशिष्टीकरण छ (संशोधन, शब्द प्रस्ट्याउने, मेटाउने, सम्पादन) मात्र कागजात को धेरै संस्करण तिर जान्छ, तर पनि विभिन्न सामग्री यसको संस्करणहरूमा, विशिष्ट अर्थ विज्ञान हुन्छ।

विशेष मा, वाक्यांश बसालेको कार्य सम्पादन पछि यो हेर्नेछ "वर्ग uranenie समाधान": "। एक द्विघात समीकरण समाधान गर्न" सुरुमा पहिलो त्रुटि सही गएको छ, भने र त्यसपछि दोस्रो, त्यसपछि OOXML शैली मा प्राकृतिक जानकारी जस्तो हुन सक्छ: "[हल] [] [वर्ग] [ई] [] [चियर्स] [ख] [nenie]", तर यो गर्दैन यो कार्य ट्याग OOXML (कोष्ठक कोष्ठक ट्याग अनुकरण) मा देखा पर्ने छ कि ग्यारेन्टी।

सँगै प्रत्येक कार्य सम्पादन प्रक्रिया पछि सजिलै हुन सक्छ जानकारी राख्नु, तर यो प्रक्रिया विभिन्न एल्गोरिदम द्वारा प्रदर्शन गरिनेछ प्रत्येक समय। नियमित अभिव्यक्ति, जानकारी समस्या formalization को उपकरण एक तरिका रूपमा प्राकृतिक जानकारी हाइपरटेक्स्ट को औपचारिक संरचना देखि बाटो हिड्ने प्रभाव, भएका छन्।

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 ne.birmiss.com. Theme powered by WordPress.