मेरे पास एक इनपुट स्ट्रिंग है और मैं यह जांचने के लिए रेगेक्स का उपयोग करना चाहता हूं कि इस स्ट्रिंग में =
और $
हैं, उदाहरण:
इनपुट:
name=alice$name=peter$name=angelina
आउटपुट: true
इनपुट:
name=alicename=peter$name=angelina
आउटपुट: false
मेरा रेगेक्स काम नहीं करता है:
Pattern pattern = Pattern.compile("([a-z]*=[0-9]*$])*");
Matcher matcher = pattern.matcher("name=rob$name=bob");
2 जवाब
.matches()
के साथ, आप उपयोग कर सकते हैं
Pattern pattern = Pattern.compile("\\p{Lower}+=\\p{Lower}+(?:\\$\\p{Lower}+=\\p{Lower}+)*"); // With `matches()` to ensure whole string match
विवरण
\p{Lower}+
- 1+ लोअरकेस अक्षर (किसी से मेल खाने के लिए\p{L}
का उपयोग करें और\p{Alpha}
केवल ASCII अक्षरों से मेल खाने के लिए)=
- एक=
वर्ण\p{Lower}+
- 1+ छोटे अक्षर(?:\\$\\p{Lower}+=\\p{Lower}+)*
- 0 या इससे अधिक घटनाएं: <उल>\$
- एक$
चार\p{Lower}+=\p{Lower}+
- 1+ लोअरकेस अक्षर,=
और 1+ लोअरकेस अक्षर।
देखें Java डेमो:
List<String> strs = Arrays.asList("name=alice$name=peter$name=angelina", "name=alicename=peter$name=angelina");
Pattern pattern = Pattern.compile("\\p{Lower}+=\\p{Lower}+(?:\\$\\p{Lower}+=\\p{Lower}+)*");
for (String str : strs)
System.out.println("\"" + str + "\" => " + pattern.matcher(str).matches());
आउटपुट:
"name=alice$name=peter$name=angelina" => true
"name=alicename=peter$name=angelina" => false
आपके पास अतिरिक्त ]
हैं और इसे एक चरित्र के रूप में उपयोग करने के लिए $
से बचने की आवश्यकता है, हालांकि आपको $
के बिना अंतिम पैरामीटर से मिलान करने की भी आवश्यकता है, इसलिए उपयोग करें
([a-z]*=[a-z0-9]*(\$|$))*
• [a-z]*=
: ए-जेड शून्य या अधिक बार मिलान करें, मिलान = वर्ण
• [a-z0-9]*(\$|$)
: a-z और 0-9, शून्य या अधिक बार मिलान करें, उसके बाद $
वर्ण या मैच का अंत।
• ([a-z]*=[a-z0-9]*(\$|$))*
: जोड़े के शून्य या अधिक अवसरों का मिलान करें।
नोट: सख्त मिलान के लिए *
के बजाय +
(एक या अधिक मिलान) का उपयोग करें:
([a-z]+=[a-z0-9]+(\$|$))*
संबंधित सवाल
नए सवाल
java
जावा एक उच्च स्तरीय प्रोग्रामिंग भाषा है। इस टैग का उपयोग तब करें जब आपको भाषा का उपयोग करने या समझने में समस्या हो। इस टैग का उपयोग शायद ही कभी किया जाता है और इसका उपयोग अक्सर [वसंत], [वसंत-बूट], [जकार्ता-ई], [Android], [javafx], [हडूप], [श्रेणी] और [मावेन] के साथ किया जाता है।