Simplifying Regular Expression In JavaScript : JS Regex Example

Other Blogs

Image could not load

JS Regex

JavaScript में regular expressions (RegEx) का use string patterns को match करने के लिए होता है। लेकिन कई बार, इनका syntax complex lag सकता है, especially beginners के लिए।

इस blog में हम regular expressions को simplify करेंगे , और कुछ real-world examples के साथ समझेंगे कि इनका use कैसे किया जाता है.

Basic Concepts of Regular Expressions In JS

Regular expressions को /pattern/flags के format में लिखा जाता है।

  • Pattern : यह वो sequence है जिसको आप match करना चाहते हो।

  • Flags : यह optional हैं और इनका use matching behavior को control करने के लिए होता है।

Example : /hello/g , यहां hello pattern है जो string में "hello" को search करेगा। Flag g का मतलब है global search, मतलब सारी occurrences को match करेगा, सिर्फ पहली को नहीं।

JS Regex Flags

  • g (Global) : Poore string में pattern match करता है।

  • i (Case-insensitive) : Match करते वक्त case को ignore करता है।

  • m (Multiline) : Multiline mode को enable करता है जहाँ ^ and $ start और end of line को denote करते हैं।

JavaScript Regex Example

चलिए अब regex का use करके कुछ examples को देख लेते हैं

1. Literal Characters

सबसे basic form में, आप literal characters का use करते हैं string में match करने के लिए।

let pattern = /hello/; console.log(pattern.test('hello world')); // true console.log(pattern.test('hi world')); // false

यहां , /hello/ pattern को string में "hello" search के लिए use किया जा रहा है।

2. JS Regex Meta Characters

Regular Expressions में कुछ special characters होते हैं जो specific patterns को represent करते हैं , जिन्हे अभी अपने ऊपर पढ़ा।

  • . (Dot) : कोई भी single character को match करता है।

  • ^ (Caret) : String के start को denote करता है।

  • $ (Dollar) : String के end को denote करता है।

let pattern = /^h.llo$/; console.log(pattern.test('hello')); // true console.log(pattern.test('hallo')); // true console.log(pattern.test('heillo')); // false

यहां , ^h.llo$ pattern "h" से start और "llo" पे end hone wale strings को match करेगा जिसमे बीच का character कोई भी हो सकता है।

JS Regex Character Classes

Character classes specific characters या character range को match करने के लिए use होती हैं।

  • [abc] : "a", "b", या "c" को match करेगा।

  • [a-z] : Lowercase letters को match करेगा।

  • [A-Z] : Uppercase letters को match करेगा।

  • [0-9] : Digits को match करेगा।

  • \d : एक digit (0-9) को match करता है।

  • \w : एक alphanumeric character (a-z, A-Z, 0-9, _) को match करता है।

  • \s : एक whitespace character (space, तब) को match करता है।

JS regex character classes example

let pattern = /[a-z]at/; console.log(pattern.test('cat')); // true console.log(pattern.test('bat')); // true console.log(pattern.test('Cat')); // false

यहां , [a-z]at pattern किसी भी lowercase letter के साथ "at" को match करेगा, means जिस भी string के end में at आएगा।

JS Regex Quantifiers

Quantifiers specify करते हैं कि एक character या group कितनी बार repeat हो सकता है।

  • * (Asterisk) : 0 या ज़्यादा बार।

  • + (Plus) : कम से कम 1 बार।

  • ? (Question Mark) : 0 या 1 बार।

  • {n} : Exactly n बार।

  • {n,} : कम से कम n बार।

  • {n,m} : कम से कम n और ज़्यादा से ज़्यादा m बार।

JS regex quantifiers example

let pattern = /ab*c/; console.log(pattern.test('ac')); // true console.log(pattern.test('abc')); // true console.log(pattern.test('abbc')); // true

यहां , अब *c pattern "a" के बाद 0 या ज़्यादा "b" के occurrences के साथ "c" को match करेगा।

JS Regex Grouping and Alternation

Grouping का use parts of expression को group करने के लिए होता है, और alternation (|) multiple patterns को match करने के लिए।

  • (abc) : "abc" को एक group के रूप में treat करता है।

  • (a|b) : "a" या "b" को match करता है।

Example

let pattern = /(cat|dog)s?/; console.log(pattern.test('cats')); // true console.log(pattern.test('dog')); // true console.log(pattern.test('dogs')); // true console.log(pattern.test('catdog')); // false

यहां , (cat|dog)s? pattern "cat" या "dog" के साथ optional "s" को match करेगा।

JS Regex Advanced Concepts

1. JS Regex Lookaheads and Lookbehinds

Lookaheads और Lookbehinds allow करते हैं patterns को match करने के बिना उसका part बनाये -

  • Positive Lookahead ((?=...)) : Ensure करता है कि specified pattern आगे आये।

  • Negative Lookahead ((?!...)) : Ensure करता है कि specified pattern आगे न आये।

  • Positive Lookbehind ((?<=...)) : Ensure करता है कि specified pattern पहले आये।

  • Negative Lookbehind ((?<!...)) : Ensure करता है कि specified pattern पहले न आये।

let pattern = /(?<=\$)\d+/; console.log(pattern.test('$100')); // true console.log(pattern.test('100')); // false

यहां , (?<=\$)\d+ pattern उन digits को match करेगा जो "$" के बाद आते हैं।

2. JS Regex Named Capture Groups

Named capture groups allow करते हैं captured substrings को descriptive names देना।

Syntax : (?<name>...)

let pattern = /(?<areaCode>\d{3})-(?<mainNumber>\d{7})/; let match = "123-4567890".match(pattern); console.log(match.groups.areaCode); // 123 console.log(match.groups.mainNumber); // 4567890

यहां , (?<areaCode>\d{3}) और (?<mainNumber>\d{7}) named groups define करते हैं जो area code और main number को store करते हैं।

चलिए अब कुछ real world examples देख लेते हैं जो commonly use किये जाते हैं।

JS Regex Email Validation

let emailPattern = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/; console.log(emailPattern.test('test@example.com')); // true console.log(emailPattern.test('invalid-email')); // false

JS Regex Phone Number Validation

let phonePattern = /^[6-9]\d{9}$/; console.log(phonePattern.test('9876543210')); // true console.log(phonePattern.test('1234567890')); // false

JS Regex Password Validation

Complex password validation with at least one uppercase letter, one lowercase letter, one digit, and one special character :

let passwordPattern = /^(?=.*[A-Z])(?=.*[a-z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,20}$/; console.log(passwordPattern.test('StrongPass1@')); // true console.log(passwordPattern.test('weakpass')); // false

JS Regex URL Domain Extraction

let url = "https://www.example.com/path?query=string"; let domainPattern = /^https?:\/\/(www\.)?([^\/]+)/; let match = url.match(domainPattern); console.log(match[2]); // example.com

Conclusion

JavaScript Regular Expressions एक powerful tool है जो strings के साथ काम करने में बहुत helpful होता है। इस guide में हमने basics से लेकर advanced topics तक cover किया, जिससे आप easily RegEx के concepts को समझ सको और effectively implement कर सको।

आपको यह blog अच्छा लगा होगा।

Happy coding :)

Recent Blogs

Loading ...

Hey ! I'm Rahul founder of learnhindituts.com. Working in IT industry more than 4.5 years. I love to talk about programming as well as writing technical tutorials and blogs that can help to others .... keep learning :)

Get connected with me - LinkedIn Twitter Instagram Facebook

Your Thought ?

Please wait . . .

    0 Comment(s) found !