जावा ट्यूटोरियल

जावा होम जावा परिचय जावा प्रारंभ करें जावा सिंटेक्स जावा टिप्पणियाँ जावा चर जावा डेटा प्रकार जावा टाइप कास्टिंग जावा ऑपरेटर्स जावा स्ट्रिंग्स जावा मठ जावा बूलियन जावा अगर ... और जावा स्विच जावा जबकि लूप लूप के लिए जावा जावा ब्रेक/जारी रखें जावा सरणी

जावा तरीके

जावा तरीके जावा विधि पैरामीटर्स जावा विधि ओवरलोडिंग जावा स्कोप जावा रिकर्सन

जावा क्लासेस

जावा ओओपी जावा क्लासेस/ऑब्जेक्ट्स जावा क्लास एट्रीब्यूट्स जावा क्लास मेथड्स जावा कंस्ट्रक्टर्स जावा संशोधक जावा एनकैप्सुलेशन जावा पैकेज / एपीआई जावा विरासत जावा बहुरूपता जावा इनर क्लासेस जावा एब्स्ट्रैक्शन जावा इंटरफ़ेस जावा Enums जावा उपयोगकर्ता इनपुट जावा तिथि जावा ऐरेलिस्ट जावा लिंक्डलिस्ट जावा हैश मैप जावा हैशसेट जावा इटरेटर जावा रैपर क्लासेस जावा अपवाद जावा रेगेक्स जावा धागे जावा लैम्ब्डा

जावा फ़ाइल हैंडलिंग

जावा फ़ाइलें जावा फ़ाइलें बनाएँ/लिखें जावा फ़ाइलें पढ़ें जावा फ़ाइलें हटाएं

जावा कैसे करें

दो नंबर जोड़ें

जावा संदर्भ

जावा कीवर्ड जावा स्ट्रिंग तरीके जावा गणित के तरीके

जावा उदाहरण

जावा उदाहरण जावा कंपाइलर जावा व्यायाम जावा प्रश्नोत्तरी जावा प्रमाणपत्र


जावा रेगुलर एक्सप्रेशन


रेगुलर एक्सप्रेशन क्या है?

रेगुलर एक्सप्रेशन वर्णों का एक क्रम है जो एक खोज पैटर्न बनाता है। जब आप किसी टेक्स्ट में डेटा खोजते हैं, तो आप जो खोज रहे हैं उसका वर्णन करने के लिए आप इस खोज पैटर्न का उपयोग कर सकते हैं।

रेगुलर एक्सप्रेशन एकल वर्ण या अधिक जटिल पैटर्न हो सकता है।

रेगुलर एक्सप्रेशन का उपयोग सभी प्रकार की टेक्स्ट सर्च और टेक्स्ट रिप्लेस ऑपरेशंस को करने के लिए किया जा सकता है।

जावा में बिल्ट-इन रेगुलर एक्सप्रेशन क्लास नहीं है, लेकिन हम रेगुलर एक्सप्रेशन java.util.regex के साथ काम करने के लिए पैकेज को इम्पोर्ट कर सकते हैं। पैकेज में निम्नलिखित वर्ग शामिल हैं:

  • Pattern कक्षा - एक पैटर्न को परिभाषित करता है (खोज में उपयोग किया जाने वाला)
  • Matcher कक्षा - पैटर्न की खोज के लिए प्रयुक्त
  • PatternSyntaxException क्लास - रेगुलर एक्सप्रेशन पैटर्न में सिंटैक्स त्रुटि को दर्शाता है

उदाहरण

पता लगाएँ कि क्या वाक्य में "w3schools" शब्द की कोई आवृत्ति है:

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Main {
  public static void main(String[] args) {
    Pattern pattern = Pattern.compile("w3schools", Pattern.CASE_INSENSITIVE);
    Matcher matcher = pattern.matcher("Visit W3Schools!");
    boolean matchFound = matcher.find();
    if(matchFound) {
      System.out.println("Match found");
    } else {
      System.out.println("Match not found");
    }
  }
}
// Outputs Match found

उदाहरण समझाया गया

इस उदाहरण में, "w3schools" शब्द को एक वाक्य में खोजा जा रहा है।

सबसे पहले, पैटर्न Pattern.compile()विधि का उपयोग करके बनाया गया है। पहला पैरामीटर इंगित करता है कि कौन सा पैटर्न खोजा जा रहा है और दूसरे पैरामीटर में एक ध्वज है जो इंगित करता है कि खोज केस-संवेदी होनी चाहिए। दूसरा पैरामीटर वैकल्पिक है।

matcher()विधि का उपयोग स्ट्रिंग में पैटर्न को खोजने के लिए किया जाता है यह एक मैचर ऑब्जेक्ट देता है जिसमें किए गए खोज के बारे में जानकारी होती है।

यदि पैटर्न स्ट्रिंग में पाया गया find()था और गलत नहीं मिला तो विधि सत्य लौटाती है।



झंडे

विधि में झंडे compile()खोज के प्रदर्शन के तरीके को बदलते हैं। यहां उनमें से कुछ हैं:

  • Pattern.CASE_INSENSITIVE- खोज करते समय अक्षरों के मामले पर ध्यान नहीं दिया जाएगा।
  • Pattern.LITERAL- पैटर्न में विशेष वर्णों का कोई विशेष अर्थ नहीं होगा और खोज करते समय उन्हें सामान्य वर्णों के रूप में माना जाएगा।
  • Pattern.UNICODE_CASECASE_INSENSITIVE- अंग्रेजी वर्णमाला के बाहर के अक्षरों के मामले को भी अनदेखा करने के लिए ध्वज के साथ इसका उपयोग करें

नियमित अभिव्यक्ति पैटर्न

विधि का पहला पैरामीटर Pattern.compile()पैटर्न है। यह बताता है कि क्या खोजा जा रहा है।

ब्रैकेट का उपयोग वर्णों की एक श्रृंखला को खोजने के लिए किया जाता है:

Expression Description
[abc] Find one character from the options between the brackets
[^abc] Find one character NOT between the brackets
[0-9] Find one character from the range 0 to 9

अक्षरों से परे

मेटाकैरेक्टर एक विशेष अर्थ वाले पात्र होते हैं:

Metacharacter Description
| Find a match for any one of the patterns separated by | as in: cat|dog|fish
. Find just one instance of any character
^ Finds a match as the beginning of a string as in: ^Hello
$ Finds a match at the end of the string as in: World$
\d Find a digit
\s Find a whitespace character
\b Find a match at the beginning of a word like this: \bWORD, or at the end of a word like this: WORD\b
\uxxxx Find the Unicode character specified by the hexadecimal number xxxx

परिमाणकों

क्वांटिफायर मात्रा को परिभाषित करते हैं:

Quantifier Description
n+ Matches any string that contains at least one n
n* Matches any string that contains zero or more occurrences of n
n? Matches any string that contains zero or one occurrences of n
n{x} Matches any string that contains a sequence of X n's
n{x,y} Matches any string that contains a sequence of X to Y n's
n{x,} Matches any string that contains a sequence of at least X n's

नोट: यदि आपकी अभिव्यक्ति को किसी विशेष वर्ण की खोज करने की आवश्यकता है तो आप उनसे बचने के लिए बैकस्लैश ( \ ) का उपयोग कर सकते हैं। जावा में, स्ट्रिंग्स में बैकस्लैश को स्वयं से बचने की आवश्यकता होती है, इसलिए विशेष वर्णों से बचने के लिए दो बैकस्लैश की आवश्यकता होती है। उदाहरण के लिए, एक या अधिक प्रश्न चिह्न खोजने के लिए आप निम्न अभिव्यक्ति का उपयोग कर सकते हैं: "\\?"