मुझे नियमित अभिव्यक्ति की आवश्यकता है जो पैटर्न से मेल खाती है या खाली है।क्या नियमित अभिव्यक्ति पैटर्न से मेल खाती है या खाली हो जाती है?
अभी मैं एक अभिव्यक्ति ...
"\(?\d{3}\)?[-\s.]?\d{3}[-\s.]\d{4}/x"
... जो यूएस के फ़ोन नंबर से मेल खाता है। हालांकि, यह स्ट्रिंग के लिए मान्य है जिसे मैं रिक्त होने का परीक्षण कर रहा हूं। यदि स्ट्रिंग में इसका कोई मूल्य है, तो यह अभिव्यक्ति से मेल खाना चाहिए।
मेरे पास अन्य पैटर्न हैं जो यूएस डाक कोड आदि से मेल खाते हैं, जिन्हें एक ही सशर्त की आवश्यकता होती है।
इसी अभिव्यक्ति में इसे प्राप्त करने का सबसे अच्छा तरीका क्या है?
स्पष्टीकरण: मैं माइक्रोसॉफ्ट से सत्यापन आवेदन ब्लॉक में RegexValidator का उपयोग कर रहा हूं। इसका उपयोग करने का एक उदाहरण निम्नानुसार है:
[StringLengthValidator(0, 100, MessageTemplate = "Email must be between {3} and {5}")]
[RegexValidator(@"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*", MessageTemplate = "Valid Email Required.")]
public string EmailAddress
{
get { return _EmailAddress; }
set { SetValue<string>(ref _EmailAddress, value); }
}
यही कारण है कि मुझे एक अभिव्यक्ति में होने का समाधान चाहिए।
आपके रेगेक्स के अंत में/x क्या है? पर्ल या PHP में इसका मतलब फ्री-स्पेसिंग मोड होगा, लेकिन .NET उस वाक्यविन्यास का उपयोग नहीं करता है। –
आह .. वास्तव में नहीं जानते। मैंने इसे किसी साइट से कहीं हटा लिया है। मैं इसे हटा दूंगा और देख सकता हूं कि इससे मदद मिलती है या नहीं। –