Php किनारों के आसपास रिक्त स्थान को ट्रिम करें। PHP में स्ट्रिंग्स से रिक्त स्थान कैसे हटाएं? रिक्त स्थान खोजने और बदलने का उदाहरण

पाठ के साथ काम करते समय, आपको अक्सर इसे प्रारूपित करना पड़ता है। यह सही प्रदर्शन और आसान पठनीयता के लिए आवश्यक है। यह आवश्यक है यदि उपयोगकर्ता कुछ जानकारी दर्ज करता है और गलतियाँ करता है: एक स्थान के बजाय, वह दो स्थान इंगित करता है, और शुरुआत में एक टैब डालता है। PHP में रिक्त स्थान हटाने के कई तरीके हैं।

काट-छांट करना()

ट्रिम फ़ंक्शन स्ट्रिंग के आरंभ या अंत में अतिरिक्त वर्णों की तलाश करता है। यह:

  • नियमित स्थान;
  • सारणीकरण;
  • लाइन ब्रेक चरित्र.

इसे इस रूप में लिखा गया है:

स्ट्रिंग ट्रिम (स्ट्रिंग $str [, स्ट्रिंग $character_mask = "\t\n\r\0\x0B" ])

$str संसाधित की जा रही स्ट्रिंग है, और $character_mask अतिरिक्त वर्ण है। $character_mask एक वैकल्पिक विशेषता है.

Preg_replace

रेगुलर एक्सप्रेशन का उपयोग करके वर्णों को खोजने और बदलने के लिए एक फ़ंक्शन।

मिश्रित preg_replace (मिश्रित $पैटर्न, मिश्रित $प्रतिस्थापन, मिश्रित $विषय [, int $limit = -1 [, int &$count ]])

  1. $पैटर्न - वह पैटर्न जिसे आप ढूंढ रहे हैं।
  2. $प्रतिस्थापन - प्रतिस्थापित किये जाने वाले अक्षर।
  3. $विषय - संसाधित की जा रही वस्तु।
  4. $सीमा - किए गए प्रतिस्थापनों की संख्या।

$पैटर्न और $प्रतिस्थापन सरणियाँ हो सकती हैं। इस मामले में, प्रतिस्थापन सूचकांक के अनुसार किया जाता है।

Str_replace()

आप str_replace() विधि का उपयोग करके PHP में एक स्ट्रिंग से रिक्त स्थान हटा सकते हैं। यह खोज स्ट्रिंग की सभी घटनाओं को प्रतिस्थापन स्ट्रिंग से बदल देता है।

मिश्रित str_replace (मिश्रित $search, मिश्रित $replace, मिश्रित $विषय [, int &$count ])

सरलीकृत preg_replace() विधि के रूप में उपयोग किया जाता है।

  1. $खोज - पाया जाने वाला मूल्य।
  2. $replace - प्रतिस्थापित की जाने वाली स्ट्रिंग।
  3. $विषय - वह वस्तु जिसमें खोज और प्रतिस्थापन किया जाता है।
  4. $count प्रतिस्थापनों की संख्या निर्धारित करता है।
$bodytag = str_replace("%body%", "काला", " "); // निर्दिष्ट करता है: Hll Wrld f PHP $ स्वर = सरणी ("ए", "ई", "आई", "ओ", "यू", "ए", "ई", "आई", "ओ ","U"); , सब्जियां, और फाइबर हर दिन।"; $स्वस्थ = सरणी("फल", "सब्जियां", "फाइबर"); $स्वादिष्ट = सरणी("पिज्जा", "बीयर", "आइसक्रीम"); $ न्यूफ़्रेज़ = str_replace($स्वस्थ, $स्वादिष्ट, $फ़्रेज़); // निर्दिष्ट करता है: 2 $str = str_replace('ll', '''', 'गुड गॉली मिस मौली!', $गिनती); प्रतिध्वनि $गिनती; ?>

रिक्त स्थान खोजने और बदलने का उदाहरण

ये फ़ंक्शन अधिकांश स्थितियों में लागू होते हैं, यहां तक ​​कि अधिक जटिल स्थितियों में भी।

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

$text1 = "अतिरिक्त रिक्त स्थान के साथ लंबा पाठ";

इस स्थिति में, आप देख सकते हैं कि शब्दों के बीच दो और तीन स्थान हैं। PHP में रिक्त स्थान हटाने की प्रक्रिया इस प्रकार है।

1. सबसे पहले आपको एक फ़ंक्शन का उपयोग करके एक स्ट्रिंग को स्ट्रिंग की एक सरणी में बदलना होगा।

विस्फोट(“ ”, $text1)​

एक एकल स्थान का उपयोग सीमांकक के रूप में किया जाता है। इस तरह, शरीर के वे हिस्से जो सरणी के अलग-अलग तत्व नहीं हैं, उनमें एक जगह कम होगी।

2. परिणाम इस प्रकार स्ट्रिंग्स की एक सरणी है:

$array = ["लंबा", "बड़ा", "पाठ", "सहित", "अतिरिक्त स्थान"]​

3. प्रत्येक तत्व को एक फ़ंक्शन द्वारा संसाधित किया जाता है:

Preg_replace("/\s+/", " ", $text1)​

एक या अधिक रिक्त स्थान खोजने के लिए, रेगुलर एक्सप्रेशन /\s+/ का उपयोग करें। पाए गए सभी मिलानों को स्ट्रिंग '' से बदल दिया गया है। खोज $text1 वेरिएबल में की जाती है।

4. परिणामस्वरूप, हमें रिक्त स्थान की सही संख्या के साथ एक स्ट्रिंग मिलती है, जिसे उपयोगकर्ता आसानी से समझ लेता है।

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

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

$स्ट्रिंग_पास = " 1234 " ;
$पासवर्ड = md5(ट्रिम($string_pass ));
$password2 = md5($string_pass );
गूंज $पासवर्ड;
गूंज "
"
;
गूंज $ पासवर्ड2;
?>

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

किसी भी भाषा में, स्ट्रिंग्स के साथ काम करते समय, एक सामान्य कार्य पंक्ति के आरंभ और अंत दोनों में रिक्त स्थान को हटाना होता है। PHP में इन उद्देश्यों के लिए तीन फ़ंक्शन हैं: ltrim (), rtrim (), ट्रिम ()। ltrim() फ़ंक्शन एक पंक्ति की शुरुआत में रिक्त स्थान हटाता है, rtrim() - एक पंक्ति के अंत में, ट्रिम() - शुरुआत और अंत दोनों में। दिलचस्प बात यह है कि ये फ़ंक्शन, रिक्त स्थान के अलावा, न्यूलाइन, कैरिज रिटर्न, टैब और नल कैरेक्टर एस्केप अनुक्रमों को भी हटा देते हैं।

$example = "\tसभी को नमस्कार\n"; var_dump(ट्रिम($उदाहरण)); var_dump(rtrim($example)); var_dump(ltrim($example));

परिणामस्वरूप हमें मिलता है:

स्ट्रिंग "सभी को नमस्कार" (लंबाई=12) स्ट्रिंग "सभी को नमस्कार" (लंबाई=14) स्ट्रिंग "सभी को नमस्कार " (लंबाई=13)

सबसे दिलचस्प बात यह है कि उपरोक्त फ़ंक्शन उपयोगकर्ता द्वारा निर्दिष्ट वर्णों को भी हटा सकते हैं। ऐसा करने के लिए, उपरोक्त फ़ंक्शन को दूसरे तर्क के रूप में हटाए जाने वाले वर्णों वाली एक स्ट्रिंग को पास करना होगा। उदाहरण के लिए:

$example = "आप सभी को नमस्कार\n"; var_dump(ट्रिम($उदाहरण, " y")); var_dump(rtrim($उदाहरण, " y\n")); var_dump(ltrim($उदाहरण, " yH"));

नतीजतन:

स्ट्रिंग "सभी को नमस्कार" (लंबाई=13) स्ट्रिंग "सभी को नमस्कार" (लंबाई=13) स्ट्रिंग "सभी को नमस्कार" (लंबाई=12)