संभावित डुप्लिकेट:
फोन नंबर सत्यापन के लिए एक व्यापक रेगेक्स
मैं एक टेलीफोन नंबर फ़ील्ड को मान्य करना चाहता हूं अशक्त हो सकता है तथा यदि कोई दर्ज किया गया है तो यह 10 अंकों का होना चाहिए। क्या किसी को पता है कि मैं इस तरह के लिए नियमित अभिव्यक्ति कैसे लिख सकता हूं? मैं टेलीफोन नंबर को मान्य करने के लिए @Pattern एनोटेशन का उपयोग कर रहा हूं।
बहुत बहुत धन्यवाद
उत्तर:
जवाब के लिए 3 № 1boolean validate(String number) {
return number == null || Pattern.compile("^\d{10}$").find());
}
जवाब के लिए 0 № 2
if (text != null && !text.matches("\d{10}")) {
// not a valid number
}
लेकिन जब से आप सिर्फ उन टॉपलेस हैं जो आप का उपयोग करना चाहते थे @Pattern
एक क्षेत्र को मान्य करने के लिए एनोटेशन, फिर से reqex पर्याप्त है, चूंकि, जैसा कि javadoc कहते हैं:
एनोटेटेड स्ट्रिंग को निम्नलिखित नियमित अभिव्यक्ति से मेल खाना चाहिए। नियमित अभिव्यक्ति जावा नियमित अभिव्यक्ति सम्मेलनों को देखती है पैटर्न। स्ट्रिंग को स्वीकार करता है। शून्य तत्वों को वैध माना जाता है.
(जोर मेरा)
तो, बस उपयोग करें @Pattern("\d{10}")
.
उत्तर № 3 के लिए -1
[0-9]{10}
यदि आपके पास कोई और विशिष्ट नियम हैं, तो कृपया उन्हें जोड़ें :)