होस्टनाम तथा बंदरगाह पार्स मैं इन स्वरूपों में से किसी में एक स्ट्रिंग दिया जा सकता है:स्ट्रिंग या यूआरएल
यूआरएल: जैसे http://www.acme.com:456
स्ट्रिंग: जैसे www.acme.com:456, www.acme.com 456, या www.acme.com
मैं मेजबान निकालना चाहता हूं और यदि कोई पोर्ट पेश करता हूं। यदि पोर्ट मान मौजूद नहीं है तो मैं इसे 80 तक डिफ़ॉल्ट करना चाहता हूं।
मैंने urlparse की कोशिश की है, जो यूआरएल के लिए ठीक काम करता है, लेकिन अन्य प्रारूप के लिए नहीं। जब मैं होस्टनाम पर urlparse का उपयोग करता हूं: उदाहरण के लिए पोर्ट, यह होस्टल को नेटलोक की बजाय योजना में रखता है।
मैं ऐसे समाधान से खुश हूं जो urlparse और regex का उपयोग करता है, या एक एकल regex जो दोनों प्रारूपों को संभाल सकता है।
क्या regex आप की कोशिश की है है? यदि रेगेक्स नहीं है तो आपने जो कोड लिखा है वह क्या है? –