Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> PHP

PHP में जांचें कि स्ट्रिंग में विशिष्ट सबस्ट्रिंग है या नहीं

PHP में किसी स्ट्रिंग में सबस्ट्रिंग मौजूद है या नहीं, यह जांचने के लिए strpos() फ़ंक्शन सबसे कुशल और मानक तरीका है। दिए गए उदाहरण में strlen() के साथ तुलना दिखाई गई है, लेकिन यह अनावश्यक है।

दिया गया उदाहरण (काम करता है लेकिन अनावश्यक जटिल)

<?php
$str_1 = "thisisasample";
$str_2 = "asample";

if (strpos($str_1, $str_2) >= 0 && strpos($str_1, $str_2) < strlen($str_1))
    echo("The substring is present within the string.");
else
    echo("The substring is not present within the string.");
?>

आउटपुट

The substring is present within the string.

सही और सरल तरीका

<?php
$str_1 = "thisisasample";
$str_2 = "asample";

// strpos() === false का उपयोग करें (नहीं != false, क्योंकि 0 भी वैध स्थिति है)
if (strpos($str_1, $str_2) !== false) {
    echo "Substring found!";
} else {
    echo "Substring not found.";
}
?>

strpos() का व्यवहार

  • सबस्ट्रिंग मिलने पर: उसकी **स्थिति (0-आधारित)** लौटाता है।
  • नहीं मिलने पर: false लौटाता है।
  • महत्वपूर्ण: स्थिति 0 (शुरुआत में) मिलने पर 0 लौटाता है, जो लूज़ तुलना (== false) में false के बराबर होता है। इसलिए हमेशा !== false या === false उपयोग करें।

केस-इनसेंसिटिव खोज: stripos()

<?php
$haystack = "Hello World";
$needle = "world";

if (stripos($haystack, $needle) !== false) {
    echo "Found (case-insensitive)";
}
?>

बहु-बाइट स्ट्रिंग्स के लिए: mb_strpos()

<?php
$str = "नमस्ते दुनिया";
if (mb_strpos($str, "दुनिया") !== false) {
    echo "Found in UTF-8 string";
}
?>

अन्य तरीके

फ़ंक्शनउपयोगनोट
strpos()सबसे तेज़, केस-सेंसिटिवस्थिति या false
stripos()केस-इनसेंसिटिवथोड़ा धीमा
strstr()सबस्ट्रिंग से अंत तक लौटाता हैबूलियन संदर्भ में काम करता है
preg_match()रेगेक्स पैटर्नजटिल पैटर्न के लिए, धीमा
mb_strpos()मल्टीबाइट (UTF-8) सुरक्षितmbstring एक्सटेंशन आवश्यक

सर्वोत्तम अभ्यास

  • सरल सबस्ट्रिंग जांच के लिए strpos() !== false उपयोग करें।
  • केस-इनसेंसिटिव के लिए stripos()।
  • UTF-8/हिंदी/अन्य भाषाओं के लिए mb_strpos() या mb_stripos()।
  • strlen() तुलना की आवश्यकता नहीं — strpos() कभी स्ट्रिंग लंबाई से बड़ा मान नहीं लौटाता।
  1. - JavaScript में substring() का उपयोग कैसे करें

    JavaScript substring() मेथड दो इंडेक्स पोजीशन्स के बीच के वर्णों की रेंज प्राप्त करता है। आप अंतिम इंडेक्स पोजीशन को छोड़कर substring() का उपयोग करके स्ट्रिंग के अंत तक के वर्णों को प्राप्त कर सकते हैं। एक सबस्ट्रिंग एक बड़े स्ट्रिंग का एक छोटा हिस्सा होता है। प्रोग्रामर्स स्ट्रिंग से विशिष्ट डेटा

  1. - JavaScript में कैसे जांचें कि स्ट्रिंग में सबस्ट्रिंग है या नहीं

    JavaScript में यह जांचने के लिए कि क्या स्ट्रिंग में सबस्ट्रिंग है, jQuery search() मेथड का उपयोग किया जाता है। यह जांचने के लिए निम्न कोड आज़माएं कि स्ट्रिंग Tutorialspoint: Free Video Tutorial में सबस्ट्रिंग point है या नहीं: <html> <head> <title>JavaScript String se

  1. Swift में स्ट्रिंग में दूसरी स्ट्रिंग है या नहीं जांचें Swift में स्ट्रिंग में दूसरी स्ट्रिंग है या नहीं जांचें

    स्ट्रिंग कंटेनमेंट चेक Swift में यह जांचने के लिए कि कोई स्ट्रिंग दूसरी स्ट्रिंग को कंटेन करती है या नहीं, हमें दो अलग-अलग स्ट्रिंग्स की आवश्यकता होगी। एक स्ट्रिंग जिसे हमें जांचना है कि क्या उसमें दूसरी स्ट्रिंग है। मान लीजिए जिस स्ट्रिंग को हम जांचना चाहते हैं वह point है और पूरी स्ट्रिंग Tutoria