PHP मा Regex

PHP JSON र कलब्याक प्रकार्यहरू
PHP मा OOP: एक शुरुआती गाइड

नियमित अभिव्यक्ति भनेको के हो?

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

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

स्ट्रिङबाट पाठ खोज्न वा विशिष्ट क्यारेक्टर वा स्ट्रिङहरू बदल्नको लागि नियमित अभिव्यक्ति प्रयोग गर्न सकिन्छ।

नियमित अभिव्यक्ति एकल वर्ण वा केही जटिल ढाँचाहरूको संयोजन हुन सक्छ।

PHP मा नियमित अभिव्यक्तिको सिन्ट्याक्स

सीमांकक कुनै पनि वर्ण हुन सक्छ जुन अक्षर, संख्या, ब्याकस्ल्याश, वा स्पेस होइन। सबैभन्दा सामान्य डिलिमिटर फर्वार्ड-स्ल्याश (/) हो, तर जब तपाईंको ढाँचाले फर्वार्ड स्ल्याशहरू समावेश गर्दछ यो # वा ~ जस्ता अन्य सीमांककहरू छनौट गर्न सुविधाजनक हुन्छ।

सामान्यतया, PHP मा नियमित अभिव्यक्ति समावेश गर्दछ of तीन भाग।

  1. डिलिमिटर - यसले निर्दिष्ट गर्दछ कि ढाँचामा स्ट्रिङको सुरु वा अन्त्य बताउँछ। एक सीमांकक ब्याकस्ल्याश, नम्बर, अक्षर, वा स्पेस हुन सक्दैन। यद्यपि, फर्वार्ड स्ल्याशलाई डेलिमिटरको रूपमा प्रयोग गर्न सकिन्छ। यदि तपाईंले खोज्नु भएको ढाँचाहरूमा फर्वार्डिङ स्ल्याशहरू छन् भने, तपाईंले सीमाङ्कनलाई झुकाव ~ वा ह्यास # मा परिवर्तन गर्न सक्नुहुन्छ।
  2. ढाँचा - यसले खोजी गर्न क्यारेक्टरहरूको ढाँचा वा अनुक्रम निर्दिष्ट गर्यो।
  3. परिमार्जक (वैकल्पिक) - तपाईले ढाँचा केसहरूको मिलानलाई असंवेदनशील वा संवेदनशील बनाउन सक्नुहुन्छ।

उदाहरणका

$exp = "/php.org/i";

PHP मा RegextFunctions

PHP ले नियमित अभिव्यक्तिका लागि निर्मित प्रकार्यहरू प्रदान गर्दछ। PHP मा सबैभन्दा सामान्य regex प्रकार्यहरू हुन्:

  • Preg_replace() - यसले स्ट्रिङमा ढाँचा कति पटक देखा पर्दछ गणना गर्दछ र गणना फर्काउँछ।
  • Preg_match() - स्ट्रिङमा ढाँचा फेला परेन भने ० फर्काउँछ। 0 फेला परेको अवस्थामा।
  • Preg_match_all() - यो प्रकार्यले स्ट्रिङलाई अर्को स्ट्रिङले प्रतिस्थापन गर्छ जहाँ ढाँचा मेल खान्छ। यदि तपाईलाई बुझ्न गाह्रो भइरहेको छ भने तपाईले अर्को खण्डमा थप स्पष्ट विचार पाउनुहुनेछ।

PHP मा preg_match प्रकार्य

Preg_match प्रकार्यले फर्काउँछ बाइनरी परिणाम। त्यो या त ० वा १ हो। यदि स्ट्रिङमा तपाईंले preg_match प्रकार्यको पहिलो तर्कमा निर्दिष्ट गर्नुभएको ढाँचा समावेश छ भने, फेला नपरेको अवस्थामा यसले 0. 1 फर्काउनेछ।

निम्न उदाहरण हेर्नुहोस्, जसमा हामी क्यारेक्टरहरू PHP को लागि स्ट्रिङ खोज्छौं।

<?php
$str = "Visit php.org";
$pattern = "/php/i";
echo preg_match($pattern, $str); // Outputs 1
?>

PHP मा preg_match_all प्रकार्य

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

उदाहरणका

<?php
$str = "It is raining heavily. Cars are slipping outside. ";
$pattern = "/ing/i";
echo preg_match_all($pattern, $str); // Outputs 4
?>

/i माथिको उदाहरणमा निर्दिष्ट गर्नुहोस् कि स्ट्रिङ या त सानो वा माथिल्लो केसमा हुन सक्छ।

PHP मा preg_replace प्रकार्य

preg_replace प्रकार्यले स्ट्रिङमा पाइने ढाँचालाई केही अन्य क्यारेक्टरहरूसँग बदलेर नयाँ स्ट्रिङ फर्काउँछ। यो प्रकार्यले तीन प्यारामिटरहरू स्वीकार गर्दछ। पहिलो प्यारामिटर दोस्रो प्यारामिटरमा स्ट्रिङमा खोजी गर्ने ढाँचा हो। अन्तमा, तेस्रो प्यारामिटर स्ट्रिङमा फेला परेको ढाँचाको स्थानमा राख्नको लागि स्ट्रिङ हो।

निम्न उदाहरण हेर्नुहोस्, जसमा हामीले वेबसाइट शब्दलाई PHP.org ले प्रतिस्थापन गर्छौं

उदाहरणका

<?php
$str = "Visit Website!";
$pattern = "/Website/i";
echo preg_replace($pattern, "php.org", $str); // Outputs "Visit php.org!"
?>

नियमित अभिव्यक्ति परिमार्जकहरू

तपाइँ निम्न परिमार्जन चरहरू परिभाषित गरेर PHP मा regex को खोज व्यवहार समायोजन गर्न सक्नुहुन्छ।

  1. I - केस-संवेदनशील खोज प्रदर्शन गर्न प्रयोग गरियो।
  2. U - utf-8 ढाँचाहरूको सही खोजको लागि।
  3. M - PHP regex मा बहु-खोजी थप्छ। त्यहाँ केहि ढाँचाहरू छन् जुन प्रत्येक रेखाको सुरु वा अन्त्यमा खोजी गरिन्छ। त्यसोभए, यी ढाँचाहरूले स्ट्रिङको प्रत्येक रेखाको सुरु र अन्त्यमा हेर्छन्।

PHP regex मा दायरा निर्दिष्ट गर्नुहोस्

निम्न तीन अवधारणाहरू बुझ्नुहोस्। पाठ खोज्दा वा यसलाई प्रतिस्थापन गर्दा ढाँचाहरूमा दायरा राख्न यसले तपाईंलाई मद्दत गर्नेछ।

  1. [ए बी सी] - वर्ग कोष्ठकहरूले स्ट्रिङमा यी क्यारेक्टरहरूबाट कुनै एक क्यारेक्टर फेला पार्ने संकेत गर्छ।
  2. [^०-९] - कोष्ठक भित्र दायरामा नभएका क्यारेक्टरहरू खोज्नुहोस्।
  3. [0-9] - ० देखि ९ को बीचमा कुनै एउटा क्यारेक्टर फेला पार्नुहोस्। यस अवस्थामा ० र ९ समावेशी छन्।

तपाईं PHP मा Regex प्रकार्यहरू बारे थप जान्न सक्नुहुन्छ यहाँ

PHP JSON र कलब्याक प्रकार्यहरू
PHP मा OOP: एक शुरुआती गाइड
en English
X
माथि स्क्रोल गर्नुहोस्