What is Regex in javascript in Hindi
regrex (regular expression) का उपयोग string में pattern matching या string matching के लिए किया जाता है |
regular expression कुछ characters के sequence मिलकर एक search pattern बनाता है | और इस pattern के जरिये किसी text को search या replace किया जाता है |
search pattern एक character से भी बन सकता है या फिर special characters combination से भी बन सकता है |
program में कोई validation check करना है जैसे की email-validation या फिर password validation ऐसे खास जगह पे regrex का उपयोग होता है |
Regular Expression कैसी लिखी जाती है
javascript में 2 तरीके से regular expression लिखी जाती है : 1) regular expression literals, 2) regular expression constructor function
1) regular expression literal
literal notation में regular expression pattern को दो slashes के अन्दर लिखी जाती है | उसके साथ flags यानि modifiers भी दी जाती है पर modifiers optional हो सकता है |
Syntax: var reg = /pattern/flags;
उदाहरण: var reg = /success/i;
2) regexp object constructor function
दुसरे तरीके में regExp object के constructor function के जरिये regular expression लिखी जाती है |
Syntax: var reg = new RegExp(pattern, flags)
- pattern – ये regular expression pattern को indicate करता है |
- flags- string में search करने के condition को flag specify करता है |
Regular Expression Patterns in javascript
javascript में patterns बनाने के लिए कई चीजों की जरुरत होती है और जिसे brackets, modifiers, meta characters के जरिए बनाई जाती है |
modifiers
modifiers, search pattern की search condition बताता है जैसे की globally search होगा या case-insensitive वो बताता है |
- g – ये pattern को globally search करता है |
- i – ये case-insensitive तरीके से pattern को search करता है |
- m – ये pattern को multi-line में search करता है |
उदाहरण
<!DOCTYPE html>
<html>
<head>
<title>regx patterns example</title>
</head>
<body>
<p id="p1"></p>
<script>
let text = "veg biryani. veg fried rice?";
let pattern = /veg/g;
let result = text.match(pattern);
document.getElementById("p1").innerHTML = result;
</script>
</body>
</html>
brackets
brackets का उपयोग string में किसी खास characters range को निकालने के लिए उपयोग होता है |
| expressions | description |
| [abc] | bracket के अन्दर के कोई भी character को search करेगा | |
| [^abc] | bracket के अन्दर mention character के अलावा बाकी character को search करेगा | |
| [0-9] | 0 से लेकर 9 numbers के बिच की कोई digit को search करेगा | |
| [x|y] | x और y के बिच की alternative को search करेगा | |
meta characters
meta characters reserved characters है जो search pattern से जुड़ कर text search में कुछ special condition देता है | कुछ खास चीजें match करके return करने के लिए meta characters का उपयोग होता है |
| metacharacter | description |
| . (single dot) | single dot single character को find करता है (नॉटपॉइंट: पर ये new-line या line terminator में search नहीं करता है) |
| \w | word character को find करता है | |
| \W | non-word character को find करता है | |
| \d | digit को find करता है | |
| \D | non-digit को find करता है | |
Quantifiers
Quantifiers, string में एक character या एक से अधिक character match करने के लिए उपयोग होता है |
| quantifiers | description |
| n+ | character atleast एक बार string में है या नहीं वो बताता है | |
| n* | character string में 0 से या उससे अधिक बार है या नहीं वो बताता है | |
| n? | character string में 0 से या एक बार है या नहीं वो बताता है | |
| n$ | character को string के आखीर में है या नहीं बताता है | |
| ^n | character को string के सुरु में है या नहीं बताता है | |
RegExp Object Properties
javascript में regular expression के साथ इस्तेमाल करने के लिए कुछ properties को define किया गया है जिसकी list निचे दी गयी है:
| property | description |
| constructor | इस property से उस function को return किया जाता है जो regular expression object को create करता है | |
| global | global property से ‘g’ modifier set है या नहीं check किया जाता है | |
| ignoreCase | ignoreCase property से ‘i’ modifier set है या नहीं check किया जाता है | |
| lastIndex | lastindex property index position बताता है जहाँ से दूसरी match सुरु होगी | |
| multiline | ignoreCase property से ‘m’ modifier set है या नहीं check किया जाता है | |
| source | इस property से regular expression pattern के text को return कर सकतें हैं | |
नॉटपॉइंट: global, ignoreCase और multiline property result true या false में देता है |
RegExp object methods
| methods | description |
| compile() | इस method का उपयोग regular expression को compile करने के लिए किया जाता है | |
| exec() | ये method pattern को string से match करवाता है और पहला match जो मिलता है उसीको return करता है | |
| test() | ये method pattern को string से match करवाता है और result को true या false में return करता है | |
| tostring() | ये method, regular expression की string value को return करता है | |
exec() method
exec() method से regular expression pattern को search किया जाता है और जो पहला text match होता है उसे ये return करता है |
Syntax: pattern.exec(‘main string’);
उदाहरण:
<!DOCTYPE html>
<html>
<head>
<title>regx patterns example</title>
</head>
<body>
<p id="p1"></p>
<script>
let text = "success result in coding";
let patt = /su/;
let result = patt.exec(text);
document.getElementById("p1").innerHTML = result;
</script>
</body>
</html>
test() method
test() method text pattern को string में search करता है | जब pattern match कर जाता है तब ये true return करता है और अगर match नहीं करता तब ये false return करता है |
Syntax: pattern.test(‘main string’);
उदाहरण:
<script>
let text = "success result in coding";
let patt = /su/;
let result = patt.test(text);
document.getElementById("p1").innerHTML = result;
</script>