रेगुलर एक्सप्रेशन में कैरेक्टर सेट का इनवर्शन

वर्गाकार कोष्ठकों की शुरुआत में कैरट ^ का उपयोग करके वांछित को उलटा किया जा सकता है। अर्थात, उदाहरण के लिए, यदि कमांड [ab] अक्षर 'a' या 'b' ढूंढती है, तो कमांड [^ab] 'a' और 'b' को छोड़कर सभी वर्णों को ढूंढेगी।

उदाहरण

इस उदाहरण में, खोज पैटर्न इस प्रकार दिखता है: अक्षर 'x', फिर अक्षर 'a' नहीं, 'b' नहीं और 'c' नहीं, फिर अक्षर 'z':

php<?php
  $str = 'xaz xbz xcz xez';
  $res = preg_replace('#x[^abc]z#', '!', $str);
?>

परिणामस्वरूप, वेरिएबल में निम्नलिखित लिखा जाएगा:

php'xaz xbz xcz !'

उदाहरण

इस उदाहरण में, खोज पैटर्न इस प्रकार दिखता है: अक्षर 'x', फिर छोटा लैटिन अक्षर नहीं, फिर अक्षर 'z':

php<?php
  $str = 'xaz xbz x1z xCz';
  $res = preg_replace('#x[^a-z]z#', '!', $str);
?>

परिणामस्वरूप, वेरिएबल में निम्नलिखित लिखा जाएगा:

php'xaz xbz ! !'

प्रायोगिक कार्य

Задание 1

एक रेगुलर एक्सप्रेशन लिखें जो स्ट्रिंग्स को इस पैटर्न के अनुसार ढूंढे: अंक '1', फिर कोई वर्ण जो 'e' नहीं है और 'x' नहीं है, फिर अंक '2'।

Задание 2

एक रेगुलर एक्सप्रेशन लिखें जो स्ट्रिंग्स को इस पैटर्न के अनुसार ढूंढे: अक्षर 'x', फिर 2 से 7 तक का कोई अंक नहीं, फिर अक्षर 'z'।

Задание 3

एक रेगुलर एक्सप्रेशन लिखें जो स्ट्रिंग्स को इस पैटर्न के अनुसार ढूंढे: अक्षर 'x', फिर बड़ा लैटिन अक्षर नहीं जो 1 या अधिक बार आता हो, फिर अक्षर 'z'।

Задание 4

एक रेगुलर एक्सप्रेशन लिखें जो स्ट्रिंग्स को इस पैटर्न के अनुसार ढूंढे: अक्षर 'x', फिर कोई वर्ण जो बड़ा लैटिन अक्षर नहीं है और न ही छोटा लैटिन अक्षर है और न ही 1 से 5 तक का अंक है, जो 1 या अधिक बार आता हो, फिर अक्षर 'z'।