रेगुलर एक्सप्रेशन में कैरेक्टर सेट का इनवर्शन
वर्गाकार कोष्ठकों की शुरुआत में कैरट ^ का उपयोग करके वांछित को उलटा किया जा सकता है। अर्थात,
उदाहरण के लिए, यदि कमांड [ab] अक्षर 'a' या 'b' ढूंढती है, तो कमांड
[^ab] 'a' और 'b' को छोड़कर सभी वर्णों को ढूंढेगी।
उदाहरण
इस उदाहरण में, खोज पैटर्न इस प्रकार दिखता है:
अक्षर 'x', फिर अक्षर 'a' नहीं,
'b' नहीं और 'c' नहीं, फिर अक्षर
'z':
<?php
$str = 'xaz xbz xcz xez';
$res = preg_replace('#x[^abc]z#', '!', $str);
?>
परिणामस्वरूप, वेरिएबल में निम्नलिखित लिखा जाएगा:
'xaz xbz xcz !'
उदाहरण
इस उदाहरण में, खोज पैटर्न इस प्रकार दिखता है:
अक्षर 'x', फिर छोटा लैटिन अक्षर नहीं,
फिर अक्षर 'z':
<?php
$str = 'xaz xbz x1z xCz';
$res = preg_replace('#x[^a-z]z#', '!', $str);
?>
परिणामस्वरूप, वेरिएबल में निम्नलिखित लिखा जाएगा:
'xaz xbz ! !'
प्रायोगिक कार्य
एक रेगुलर एक्सप्रेशन लिखें जो स्ट्रिंग्स को
इस पैटर्न के अनुसार ढूंढे: अंक '1', फिर कोई वर्ण
जो 'e' नहीं है और 'x' नहीं है, फिर अंक '2'।
एक रेगुलर एक्सप्रेशन लिखें जो स्ट्रिंग्स को
इस पैटर्न के अनुसार ढूंढे: अक्षर 'x', फिर
2 से 7 तक का कोई अंक नहीं, फिर अक्षर 'z'।
एक रेगुलर एक्सप्रेशन लिखें जो स्ट्रिंग्स को
इस पैटर्न के अनुसार ढूंढे: अक्षर 'x', फिर
बड़ा लैटिन अक्षर नहीं जो 1 या अधिक बार आता हो,
फिर अक्षर 'z'।
एक रेगुलर एक्सप्रेशन लिखें जो स्ट्रिंग्स को
इस पैटर्न के अनुसार ढूंढे: अक्षर 'x', फिर कोई वर्ण जो
बड़ा लैटिन अक्षर नहीं है और न ही छोटा लैटिन अक्षर है और न ही 1 से 5 तक का अंक है,
जो 1 या अधिक बार आता हो, फिर अक्षर 'z'।