java regex tutorial with regular expression examples
यह जावा रेगेक्स ट्यूटोरियल बताता है कि जावा में एक नियमित अभिव्यक्ति क्या है, हमें इसकी आवश्यकता क्यों है, और नियमित अभिव्यक्ति उदाहरणों की मदद से इसका उपयोग कैसे करें:
सेवा मेरे नियमित अभिव्यक्ति जावा में जिसे संक्षिप्त रूप में ' regex “एक अभिव्यक्ति है जिसका उपयोग स्ट्रिंग्स के लिए एक खोज पैटर्न को परिभाषित करने के लिए किया जाता है।
खोज पैटर्न एक साधारण चरित्र या एक विकल्प हो सकता है या यह एक जटिल स्ट्रिंग या अभिव्यक्ति हो सकता है जो स्ट्रिंग में खोजे जाने वाले विशेष पैटर्न को परिभाषित करता है।
इसके अलावा, पैटर्न को एक या अधिक बार स्ट्रिंग से मेल खाना पड़ सकता है।
=> सभी के लिए जावा प्रशिक्षण श्रृंखला देखने के लिए यहां जाएं।
आप क्या सीखेंगे:
नियमित अभिव्यक्ति: हमें इसकी आवश्यकता क्यों है
एक स्ट्रिंग में एक पैटर्न की खोज के लिए एक नियमित अभिव्यक्ति का उपयोग मुख्य रूप से किया जाता है। हम एक स्ट्रिंग में एक पैटर्न की खोज क्यों करते हैं? हम एक विशेष पैटर्न को एक स्ट्रिंग में ढूंढना चाहते हैं और फिर इसे हेरफेर कर सकते हैं या इसे संपादित कर सकते हैं।
इसलिए एक कंप्यूटर अनुप्रयोग में, हमें विभिन्न पैटर्नों में हेरफेर करने की निरंतर आवश्यकता हो सकती है। इसलिए, हमें पैटर्न की खोज की सुविधा के लिए हमेशा regex की आवश्यकता होती है।
अब खोज करने के लिए एक पैटर्न दिया गया है कि रेगेक्स कैसे काम करता है?
जब हम एक रेगेक्स का उपयोग करके पाठ का विश्लेषण और परिवर्तन करते हैं, तो हम कहते हैं कि applied हमने स्ट्रिंग या पाठ पर रेगेक्स लागू किया है ’। हम क्या करते हैं, हम पाठ को 'बाएं से दाएं' दिशा में पैटर्न लागू करते हैं और स्रोत स्ट्रिंग पैटर्न के साथ मेल खाते हैं।
उदाहरण के लिए, एक स्ट्रिंग पर विचार करें ” अब्बाजब ”। मान लें कि एक regex a aba ’परिभाषित है। तो अब हमें इस regex को स्ट्रिंग पर लागू करना होगा। रेगेक्स को बाएं से दाएं पर लागू करना, रेगेक्स स्ट्रिंग से मेल खाएगा ” aba_aba___ ”, दो स्थानों पर।
इस प्रकार एक मैच में एक स्रोत चरित्र का उपयोग करने के बाद, हम उसका पुन: उपयोग नहीं कर सकते। इस प्रकार पहले मैच को खोजने के बाद, तीसरे वर्ण ‘a’ का पुन: उपयोग नहीं किया गया था।
मुफ्त मोबाइल फोनों के लिए सबसे अच्छी जगह है
java.util.regex
जावा भाषा रेगेक्स के लिए कोई अंतर्निहित वर्ग प्रदान नहीं करती है। लेकिन हम 'आयात करके नियमित अभिव्यक्ति के साथ काम कर सकते हैं java.util.regex ”पैकेज।
पैकेज java.util.regex एक इंटरफ़ेस और तीन कक्षाएं प्रदान करता है जैसा कि नीचे दिखाया गया है:
पैटर्न वर्ग: एक पैटर्न वर्ग संकलित रेगेक्स का प्रतिनिधित्व करता है। पैटर्न वर्ग के पास कोई सार्वजनिक निर्माता नहीं है, लेकिन यह स्थिर संकलन () तरीके प्रदान करता है जो पैटर्न ऑब्जेक्ट्स को वापस करते हैं और पैटर्न बनाने के लिए उपयोग किया जा सकता है।
मिलान करने वाला वर्ग: माचिस क्लास ऑब्जेक्ट स्ट्रिंग के रेगेक्स पैटर्न से मेल खाता है। पैटर्न वर्ग की तरह, यह वर्ग भी किसी भी सार्वजनिक निर्माता को प्रदान नहीं करता है। यह माचिस () विधि प्रदान करता है जो एक माचिस की वस्तु लौटाता है।
पैटर्नसाइनएक्सएक्स अपवाद: यह वर्ग एक अनियंत्रित अपवाद को परिभाषित करता है। प्रकार का एक पैटर्न PatternSyntaxException एक अनियंत्रित अपवाद देता है जो रेगेक्स पैटर्न में एक वाक्यविन्यास त्रुटि का संकेत देता है।
MatchResult इंटरफ़ेस: MatchResult इंटरफ़ेस regex पैटर्न मिलान परिणाम निर्धारित करता है।
जावा रेगेक्स उदाहरण
जावा में रेगेक्स का एक सरल उदाहरण लागू करें। नीचे दिए गए प्रोग्राम में हमारे पास पैटर्न के रूप में एक साधारण स्ट्रिंग है और फिर हम इसे एक स्ट्रिंग से मिलाते हैं। आउटपुट स्ट्रिंग में प्रारंभ और समाप्ति स्थिति को प्रिंट करता है जहां पैटर्न पाया जाता है।
import java.util.regex.Matcher; import java.util.regex.Pattern; public class Main { public static void main(String args()) { //define a pattern to be searched Pattern pattern = Pattern.compile('Help.'); // Search above pattern in 'softwareTestingHelp.com' Matcher m = pattern.matcher('softwareTestingHelp.com'); // print the start and end position of the pattern found while (m.find()) System.out.println('Pattern found from position ' + m.start() + ' to ' + (m.end()-1)); } }
आउटपुट:
पैटर्न 15 से 19 तक पाया गया
रेगेक्स मिलान जावा में
मिलानकर्ता वर्ग MatchResult इंटरफ़ेस को लागू करता है। माचिस एक रेगेक्स इंजन के रूप में कार्य करता है और इसका उपयोग चरित्र अनुक्रम के सटीक मिलान के लिए किया जाता है।
नीचे दिए गए मिलानकर्ता वर्ग के सामान्य तरीके हैं। इसकी और विधियां हैं लेकिन हमने नीचे केवल महत्वपूर्ण विधियों को सूचीबद्ध किया है।
नहीं न | तरीका | विवरण |
---|---|---|
। | इंट स्टार्ट () | मिलान की हुई अनुक्रमणिका का आरंभिक सूचकांक देता है और उसे वापस लौटाता है। |
एक | बूलियन मैच () | जाँचता है कि रेगेक्स पैटर्न से मेल खाता है या नहीं। |
दो | पैटर्न पैटर्न () | वह पैटर्न लौटाता है जो मिलानकर्ता व्याख्या करता है। |
३ | बूलियन खोजें () | यह पद्धति पैटर्न से मेल खाने वाली अगली अभिव्यक्ति को ढूंढती है। |
४ | बूलियन मिल (इंट स्टार्ट) | खोजने के रूप में भी (), लेकिन दी गई शुरुआत की स्थिति से मिलान करने के लिए अभिव्यक्ति पाता है। |
५ | स्ट्रिंग समूह () | पैटर्न के मिलान के बाद रिटर्न देता है। |
६ | स्ट्रिंग समूह (स्ट्रिंग नाम) | इनपुट के बाद रिटर्न देता है। यह निर्दिष्ट मैच के साथ समूह पर कब्जा करके पहले के मैच ऑपरेशन में कब्जा कर लिया गया है। |
। | इरादा करना() | रिटर्न मैच की स्थिति / मिलान के बाद का सूचकांक। |
९ | int groupCount () | मिलान की हुई कुल संख्या वापस लौटाएं। |
१० | स्ट्रिंग प्रतिस्थापन (स्ट्रिंग प्रतिस्थापन) | इनपुट अनुक्रम के सभी बाद के चरणों को प्रतिस्थापित करें जो दिए गए प्रतिस्थापन स्ट्रिंग द्वारा पैटर्न से मेल खाते हैं। |
ग्यारह | स्ट्रिंग प्रतिस्थापन (स्ट्रिंग प्रतिस्थापन) | निर्दिष्ट प्रतिस्थापन स्ट्रिंग द्वारा इनपुट अनुक्रम के पहले मिलान के बाद बदलें। |
१२ | स्ट्रिंग toString () | वर्तमान मिलान के स्ट्रिंग प्रतिनिधित्व लौटें। |
नियमित अभिव्यक्ति कार्यान्वयन उदाहरण
आइए इनमें से कुछ तरीकों के उपयोग का एक उदाहरण देखें।
import java.util.regex.Matcher; import java.util.regex.Pattern; public class MatcherDemo { public static void main(String() args) { String inputString = 'She sells sea shells on the sea shore with shells'; //obtain a Pattern object Pattern pattern = Pattern.compile('shells'); // obtain a matcher object System.out.println('input string: ' + inputString); Matcher matcher = pattern.matcher(inputString); inputString = matcher.replaceFirst('pearls'); System.out.println('
replaceFirst method:' + inputString); //use replaceAll method to replace all occurrences of pattern inputString = matcher.replaceAll('pearls'); System.out.println('
replaceAll method:' + inputString); } }
आउटपुट:
इनपुट स्ट्रिंग: वह समुद्र के किनारे समुद्र के गोले बेचता है
प्रतिस्थापन विधि: वह समुद्र के किनारों पर सीपियों के साथ समुद्री मोती बेचता है
प्रतिस्थापन विधि: वह समुद्र के किनारे मोती के साथ समुद्री मोती बेचता है
जावा में रेगेक्स पैटर्न क्लास
पैटर्न वर्ग रेगेक्स इंजन के लिए पैटर्न को परिभाषित करता है जो तब इनपुट स्ट्रिंग के साथ मेल खाने के लिए इस्तेमाल किया जा सकता है।
निम्न तालिका पैटर्न वर्ग द्वारा प्रदान की गई विधियों को दिखाती है जो आमतौर पर उपयोग की जाती है।
नहीं न | तरीका | विवरण |
---|---|---|
। | स्ट्रिंग () विभाजन (इनपुट इनपुट, अंतर सीमा) | इनपुट स्ट्रिंग एक दिए गए पैटर्न द्वारा पाए गए मैचों के आसपास विभाजित है। |
एक | स्थिर पैटर्न संकलन (स्ट्रिंग रेगेक्स) | रीगेक्स के संकलित प्रतिनिधित्व को रिटर्न करता है। |
दो | स्थिर पैटर्न संकलन (स्ट्रिंग रेगेक्स, इंट फ्लैग) | कंप्लेक्स को निर्दिष्ट झंडे और रिटर्न पैटर्न का उपयोग करके रेगेक्स दिया गया। |
३ | माचिस मेल खाता है (CharSequence input) | पैटर्न के साथ इनपुट अनुक्रम का मिलान करके एक मिलान लौटाता है। |
४ | स्टेटिक बूलियन मैच (स्ट्रिंग रेगेक्स, चारसेंसेंस इनपुट) | दिए गए rexx को संकलित करता है और दिए गए इनपुट के साथ पैटर्न से मेल खाता है। |
५ | int झंडे () | उस पैटर्न के झंडे लौटाता है जिसके साथ मिलान किया जाता है। |
६ | स्ट्रिंग () विभाजन (इनपुट इनपुट) | इनपुट स्ट्रिंग एक दिए गए पैटर्न द्वारा पाए गए मैचों के आसपास विभाजित है। |
। | स्ट्रिंग पैटर्न () | नियमित अभिव्यक्ति पैटर्न लौटाता है। |
९ | स्थिर स्ट्रिंग बोली (स्ट्रिंग s) | दिए गए स्ट्रिंग के लिए एक शाब्दिक स्ट्रिंग (पैटर्न) देता है। |
१० | स्ट्रिंग toString () | पैटर्न का स्ट्रिंग प्रतिनिधित्व प्राप्त करें। |
नीचे दिए गए उदाहरण पैटर्न क्लास के उपरोक्त तरीकों में से कुछ का उपयोग करते हैं।
import java.util.regex.*; public class Main { public static void main(String() args) { // define a REGEX String String REGEX = 'Test'; // string to be searched for given pattern String actualString = 'Welcome to SoftwareTestingHelp portal'; // generate a pattern for given regex using compile method Pattern pattern = Pattern.compile(REGEX); // set limit to 2 int limit = 2; // use split method to split the string String() array = pattern.split(actualString, limit); // print the generated array for (int i = 0; i आउटपुट:
सरणी (0) = सॉफ्टवेयर में आपका स्वागत है
सरणी (1) = आईएनजी हेल्प पोर्टल
उपरोक्त कार्यक्रम में, हम पैटर्न बनाने के लिए संकलन विधि का उपयोग करते हैं। फिर हम इस पैटर्न के बारे में इनपुट स्ट्रिंग को विभाजित करते हैं और इसे एक ऐरे में पढ़ते हैं। अंत में, हम उस सरणी को प्रदर्शित करते हैं जो इनपुट स्ट्रिंग को विभाजित करने के परिणामस्वरूप उत्पन्न हुई थी।
रेगेक्स स्ट्रिंग मिलान विधि
हमने अपने स्ट्रिंग ट्यूटोरियल्स में String.Contains () विधि देखी है। यह विधि एक बूलियन मान लौटाती है जो स्ट्रिंग में एक निर्दिष्ट वर्ण है या नहीं, इसके आधार पर सही या गलत है।
इसी प्रकार, हमारे पास एक विधि 'माचिस ()' है जो यह जांचने के लिए है कि क्या स्ट्रिंग एक नियमित अभिव्यक्ति या रेगेक्स से मेल खाती है। यदि स्ट्रिंग निर्दिष्ट रेगेक्स से मेल खाती है, तो एक सही मान लौटाया जाता है या अन्यथा गलत लौटाया जाता है।
मैचों का सामान्य सिंटैक्स () विधि:
नेटवर्क सुरक्षा कुंजी का क्या अर्थ है
public boolean matches (String regex)
यदि निर्दिष्ट रेगेक्स मान्य नहीं है, तो 'पैटर्न्ससिंटैक्सएक्ससेप्शन' फेंक दिया जाता है।
आइए मैचों के उपयोग () पद्धति के प्रदर्शन के लिए एक कार्यक्रम लागू करें।
public class MatchesExample{ public static void main(String args()){ String str = new String('Java Series Tutorials'); System.out.println('Input String: ' + str); //use matches () method to check if particular regex matches to the given input System.out.print('Regex: (.*)Java(.*) matches string? ' ); System.out.println(str.matches('(.*)Java(.*)')); System.out.print('Regex: (.*)Series(.*) matches string? ' ); System.out.println(str.matches('(.*)Series(.*)')); System.out.print('Regex: (.*)Series(.*) matches string? ' ); System.out.println(str.matches('(.*)String(.*)')); System.out.print('Regex: (.*)Tutorials matches string? ' ); System.out.println(str.matches('(.*)Tutorials')); } }
आउटपुट:
इनपुट स्ट्रिंग: जावा श्रृंखला ट्यूटोरियल
रेगेक्स: (? *) जावा (। *) स्ट्रिंग से मेल खाता है? सच
Regex: (? *) Series (। *) String से मेल खाता है? सच
Regex: (? *) Series (। *) String से मेल खाता है? असत्य
Regex: (? *) ट्यूटोरियल स्ट्रिंग से मेल खाते हैं? सच
हम जावा में नियमित अभिव्यक्तियों के साथ बहुत से विशेष पात्रों और मेटाचैकर्स का उपयोग करते हैं। हम पैटर्न मिलान के लिए कई वर्ण वर्गों का भी उपयोग करते हैं। इस खंड में, हम चरित्र वर्ग, मेटा वर्ण और क्वांटिफायर युक्त तालिकाओं को प्रदान करेंगे जिनका उपयोग रेगेक्स के साथ किया जा सकता है।
रेगेक्स चरित्र वर्ग
नहीं न चरित्र वर्ग विवरण । (a-z && (^ m-p)) घटाव: z से होकर, p से नहीं: (a-lq-z) एक (pqr) पी, क्यू या आर दो (^ pqr) निषेध: पी, क्यू या आर के अलावा कोई भी चरित्र ३ (a-zA-Z) रेंज: जेड के माध्यम से एक या जेड के माध्यम से, समावेशी ४ (ए-डी (एम-पी)) संघ: d के माध्यम से, या m p के माध्यम से: (a-dm-p) ५ (a-z && (def)) प्रतिच्छेदन: डी, ई, या एफ ६ (a-z && (^ bc)) घटाव: a थ्रू z, सिवाय b और c के: (ad-z)
रेगेक्स क्वांटिफायर
क्वांटिफ़ायर का उपयोग वर्ण को रेगेक्स में होने वाली संख्या को निर्दिष्ट करने के लिए किया जाता है।
निम्न तालिका जावा में प्रयुक्त सामान्य रेगेक्स क्वांटिफायर दिखाती है।
नहीं न रेगेक्स क्वांटिफायर विवरण । _ कोई भी गैर-शब्द वर्ण, (^ w) एक एक्स? x एक बार में प्रकट होता है या नहीं दो x + x एक या अधिक बार दिखाई देता है ३ एक्स * x शून्य या अधिक बार होता है ४ x {n} x n बार होता है ५ x {n,} x n या अधिक बार होता है ६ X और Z} x कम से कम y बार लेकिन z समय से कम होता है
रेगेक्स मेटा वर्ण
रेगेक्स में मेटाच्रेकर्स शॉर्टहैंड कोड के रूप में काम करते हैं। इन कोडों में व्हाट्सएप और गैर-व्हाट्सएप चरित्र के साथ-साथ अन्य शॉर्टकोड शामिल हैं।
निम्न तालिका regex Meta वर्णों को सूचीबद्ध करती है।
नहीं न मेटा कैरेक्टर विवरण एक । कोई भी चरित्र (टर्मिनेटर से मेल नहीं खा सकता है या नहीं) दो d कोई भी अंक, (0-9) ३ _ D कोई भी गैर-अंक, (^ 0-9) ४ _ s कोई भी व्हाट्सएप चरित्र, ( t n x0B f r) ५ _ S कोई भी गैर-व्हाट्सएप चरित्र, (^ _) ६ _ में कोई भी शब्द चरित्र, (a-zA-Z_0-9) । b एक शब्द सीमा ९ B एक गैर-शब्द सीमा
नीचे दिया गया एक जावा प्रोग्राम है जो रेगेक्स में उपरोक्त विशेष पात्रों का उपयोग करता है।
import java.util.regex.*; public class RegexExample{ public static void main(String args()){ // returns true if string exactly matches 'Jim' System.out.print('Jim (jim):' + Pattern.matches('Jim', 'jim')); // Returns true if the input string is Peter or peter System.out.println('
(Pp)eter(Peter) :' + Pattern.matches('(Pp)eter', 'Peter')); //true if string = abc System.out.println('
.*abc.*(pqabcqp) :' + Pattern.matches('.*abc.*', 'pqabcqp')); // true if string doesn't start with a digit System.out.println('
^(^\d).*(abc123):' + Pattern.matches('^(^\d).*', 'abc123')); // returns true if the string contains exact three letters System.out.println('
(a-zA-Z)(a-zA-Z)(a-zA-Z) (aQz):' + Pattern.matches('(a-zA-Z)(a-zA-Z)(a-zA-Z)', 'aQz')); System.out.println('
(a-zA-Z)(a-zA-Z)(a-zA-Z), a10z' + Pattern.matches('(a-zA-Z)(a-zA-Z)(a-zA-Z), a10z', 'a10z')); //input string length = 4 // true if the string contains 0 or more non-digits System.out.println('
\D*, abcde:' + Pattern.matches('\D*', 'abcde')); //True // true of line contains only word this ^-start of the line, $ - end of the line System.out.println('
^This$, This is Java:' + Pattern.matches('^This$', 'This is Java')); System.out.println('
^This$, This:' + Pattern.matches('^This$, This', 'This')); System.out.println('
^This$, Is This Java?:' + Pattern.matches('^This$, Is This Java?', 'Is This Java?')); } }
आउटपुट:
Jim (jim):false
(पीपी) ईटर (पीटर): सच
। * abc। * (pqabcqp): सच
^ (^ d)। * (abc123): सच
(a-zA-Z) (a-zA-Z) (a-zA-Z) (aQz): सच
(ए-जेडए-जेड) (ए-जेडए-जेड) (ए-जेडए-जेड), ए १० ज़फ़ल
D *, abcde: सच
^ यह $, यह जावा: गलत है
^ यह $, यह: गलत
^ यह $, क्या यह जावा ?: गलत है
उपरोक्त कार्यक्रम में, हमने विभिन्न रिजेक्स प्रदान किए हैं जो इनपुट स्ट्रिंग के साथ मेल खाते हैं। पाठकों को सलाह दी जाती है कि वे अवधारणा को बेहतर ढंग से समझने के लिए प्रत्येक रेगेक्स के कार्यक्रम में टिप्पणियों को पढ़ें।
रेगेक्स लॉजिकल या (|) ऑपरेटर
हम regex में तार्किक या (| ऑपरेटर) का उपयोग कर सकते हैं जो हमें या तो ऑपरेंड का चयन करने का विकल्प देता है | ऑपरेटर। चरित्र या स्ट्रिंग का विकल्प देने के लिए हम इस ऑपरेटर का उपयोग regex में कर सकते हैं। उदाहरण के लिए, अगर हम दोनों शब्दों, want टेस्ट ’और, टेस्ट’ से मेल खाना चाहते हैं, तो हम इन शब्दों को टेस्ट या टेस्ट के रूप में तार्किक या ऑपरेटर में शामिल करेंगे।
आइए इस ऑपरेटर को समझने के लिए निम्न उदाहरण देखें।
import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexOR { public static void main(String() args) { // Regex string to search for patterns Test or test String regex = '(Test|test)'; // Compiles the pattern and obtains the matcher object from input string. Pattern pattern = Pattern.compile(regex); String input = 'Software Testing Help'; Matcher matcher = pattern.matcher(input); // print every match while (matcher.find()) { System.out.format('Text '%s' found at %d to %d.%n', matcher.group(), matcher.start(), matcher.end()); } //define another input string and obtain the matcher object input = 'SoftwaretestingHelp'; matcher = pattern.matcher(input); // Print every match while (matcher.find()) { System.out.format('Text '%s' found at %d to %d.%n', matcher.group(), matcher.start(), matcher.end()); } } }
आउटपुट:
पाठ 'टेस्ट' 9 से 13 में पाया गया।
पाठ 'परीक्षण' 8 से 12 पर पाया गया।
इस कार्यक्रम में, हमने regex '(परीक्षण | परीक्षण)' प्रदान किया है। फिर पहले हम इनपुट स्ट्रिंग को 'सॉफ्टवेयर टेस्टिंग हेल्प' के रूप में देते हैं और पैटर्न से मेल खाते हैं। हम देखते हैं कि मैच मिला है और स्थिति मुद्रित है।
अगला, हम 'सॉफ्टवेयरटाइटलिंग हेल्प' के रूप में इनपुट स्ट्रिंग देते हैं। इस बार भी मैच देखने को मिला है। ऐसा इसलिए है क्योंकि रेगेक्स ने उपयोग किया है या ऑपरेटर और इसलिए दोनों तरफ पैटर्न | ऑपरेटर स्ट्रिंग के साथ मेल खाता है।
Regex का उपयोग करके ईमेल सत्यापन
हम java.util.regex.Pattern.matches () पद्धति का उपयोग करके regex के साथ ईमेल आईडी (पता) को भी मान्य कर सकते हैं। यह दिए गए ईमेल आईडी को रेगेक्स के साथ मिलाता है और अगर ईमेल वैध है तो वापस लौटता है।
निम्नलिखित कार्यक्रम regex का उपयोग करके ईमेल के सत्यापन को दर्शाता है।
public class EmailDemo { static boolean isValidemail(String email) { String regex = '^(\w-_\.+)*(\w-_\.)\@((\w)+\.)+(\w)+(\w)$'; //regex to validate email. return email.matches(regex); //match email id with regex and return the value } public static void main(String() args) { String email = 'ssthva@gmail.com'; System.out.println('The Email ID is: ' + email); System.out.println('Email ID valid? ' + isValidemail(email)); email = '@sth@gmail.com'; System.out.println('The Email ID is: ' + email); System.out.println('Email ID valid? ' + isValidemail(email)); } }
आउटपुट:
ईमेल आईडी है: ssthva@gmail.com
ईमेल आईडी मान्य है? सच
ईमेल आईडी है: @ sth @ gmail.com
ईमेल आईडी मान्य है? असत्य
जैसा कि हम उपरोक्त आउटपुट से देख सकते हैं, पहली ईमेल आईडी वैध है। दूसरी आईडी सीधे @ से शुरू होती है, और इसलिए रेगेक्स इसे मान्य नहीं करता है। इसलिए यह एक अमान्य आईडी है।
उदाहरण के साथ शुरुआती के लिए सेलेनियम ट्यूटोरियल
बार बार पूछे जाने वाले प्रश्न
Q # 1) एक नियमित अभिव्यक्ति में क्या है?
उत्तर: सेवा मेरे नियमित अभिव्यक्ति सामान्यतः रेगेक्स को एक पैटर्न या वर्णों का एक क्रम (सामान्य या विशेष या मेटा वर्ण) कहा जाता है, जिसका उपयोग इनपुट स्ट्रिंग को मान्य करने के लिए किया जाता है।
Q # 2) जावा में नियमित अभिव्यक्ति के लिए मिलानकर्ता वर्ग का क्या महत्व है?
उत्तर: मिलानकर्ता वर्ग (java.util.regex.Matcher) एक रेगेक्स इंजन के रूप में कार्य करता है। यह पैटर्न की व्याख्या करके मिलान संचालन करता है।
Q # 3) जावा में पैटर्न क्या है?
उत्तर: पैकेज java.util.regex एक पैटर्न वर्ग प्रदान करता है जिसका उपयोग एक रेगेक्स को एक पैटर्न में संकलित करने के लिए किया जाता है जो रेगेक्स के लिए मानक प्रतिनिधित्व है। इस पैटर्न को तब पैटर्न के साथ मिलान करके तार को मान्य करने के लिए उपयोग किया जाता है।
Q # 4) नियमित अभिव्यक्ति में B क्या है?
उत्तर: रेगेक्स में बी को बी के रूप में दर्शाया गया है और एक एंकर चरित्र है जिसका उपयोग शब्द सीमा नामक स्थिति से मेल खाने के लिए किया जाता है। रेखा की शुरुआत एक कैरेट (^) के साथ होती है और रेखा के अंत में एक डॉलर ($) चिन्ह अंकित होता है।
Q # 5) क्या पैटर्न थ्रेड-सुरक्षित जावा है?
उत्तर: हाँ। कई समवर्ती धागे द्वारा उपयोग के लिए पैटर्न वर्ग के उदाहरण अपरिवर्तनीय और सुरक्षित हैं। लेकिन मिलानकर्ता वर्ग उदाहरण थ्रेड-सुरक्षित नहीं हैं।
निष्कर्ष
इस ट्यूटोरियल में, हमने जावा में रेगुलर एक्सप्रेशंस पर चर्चा की है। नियमित अभिव्यक्ति जिसे ate रेगेक्स ’के नाम से भी जाना जाता है, का उपयोग जावा में इनपुट स्ट्रिंग को मान्य करने के लिए किया जाता है। जावा the प्रदान करता है java.util.regex ' पैकेज जो पैटर्न, माचिस आदि जैसी कक्षाएं प्रदान करता है, जो इनपुट स्ट्रिंग के साथ पैटर्न को परिभाषित करने और मिलान करने में मदद करता है।
हमने विभिन्न विशेष चरित्र वर्ग और मेटाचैकर भी देखे हैं जिनका उपयोग हम regex में कर सकते हैं जो पैटर्न मिलान के लिए शॉर्टहैंड कोड देते हैं। हमने regex का उपयोग करके ईमेल सत्यापन का भी पता लगाया।
=> यहाँ सरल जावा प्रशिक्षण श्रृंखला का अन्वेषण करें।
अनुशंसित पाठ