किसी ईमेल में कोई ग्रिड है, तो मेल करने के लिए रेगेक्स पैटर्न को समझने का प्रयास करना, उदा।एक ईमेल उत्तर से एक guid प्राप्त करने के लिए Regex
Guid संभावित @ से पहले कहीं भी हो सकता है, उदाहरण के लिए
किसी ईमेल में कोई ग्रिड है, तो मेल करने के लिए रेगेक्स पैटर्न को समझने का प्रयास करना, उदा।एक ईमेल उत्तर से एक guid प्राप्त करने के लिए Regex
Guid संभावित @ से पहले कहीं भी हो सकता है, उदाहरण के लिए
मैं इस का उपयोग GUIDs को खोजने के लिए
Regex isGuid = new Regex(@"^(\{){0,1}[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}(\}){0,1}$", RegexOptions.Compiled);
ठीक है, यह सोचते हैं कि यह हमेशा मानक में होने वाला है GUID नोटेशन उस तरह, यदि निम्नलिखित रेगेक्स मैचों में एक GUID था। आपको केस-असंवेदनशील बनाने की अपनी भाषा की विधि भी लागू करनी चाहिए।
[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}[^@]*@
^[^@]*([a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12})
8-4-4-4-12 प्रारूप है कि एक @
से पहले आता है में किसी भी हेक्स से मेल खाएगी एक आलसी संस्करण होगा
([0-9a -एफ -] {36})। *? @
पढ़ना आसान है और मुझे लगता है कि यह सभी मामलों में 99,99% से मेल खाता है;) लेकिन फिर सभी मामलों में 0,00001% में किसी के पास ईमेल हो सकता है पता जो एक GUID योजना में फिट बैठता है।
वहाँ भी एक पंक्ति में एक ही रास्ता GUID
string findGuid = "hi Aether experiment 1481de3f-281e-9902-f98b-31e9e422431f @sdfsf 1481de3f-281e-9902-f98b-31e9e422431f"; //Initialize a new string value
var guids = Regex.Matches(Regex.Split(findGuid, "@")[0], @"(\{){0,1}[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}(\}){0,1}")[0]; //Match all substrings in findGuid
प्राप्त करने के लिए है