ईमानदारी से, आपका कार्य "एक काम कर सकता है", लेकिन जैसा कि आपने खुद कहा था
मैं regex को कई कार्यों में तोड़ना शुरू कर सकता हूं,
जिसका मतलब है कि आपका रेग पूर्व कोड बहुत सी चीजें करता है। और मुझे लगता है कि इसे छोटे, व्यक्तिगत रूप से परीक्षण योग्य इकाइयों में तोड़ा जा सकता है। हालांकि, अगर यह एक अच्छा विचार है तो जवाब देना आसान नहीं है, (विशेषकर वास्तविक कोड देखे बिना)। और सही उत्तर न तो "हां" या "नहीं" हो सकता है, लेकिन "अभी तक नहीं, लेकिन अगली बार आपको उस परिवर्तन में कुछ बदलना होगा"।
लेकिन मुझे ऐसा लगता है कि मैं वास्तव में पठनीयता खो दूंगा, क्योंकि मैं प्रभावी रूप से भाषाओं को बदल रहा हूं
और यह मूल बिंदु है - आपके पास reg पूर्व भाषा में लिखित कोड का एक टुकड़ा है । यह भाषा अपने आप में अमूर्तता का कोई अच्छा साधन प्रदान नहीं करती है (और मैं "नामांकित समूहों को" कार्यों के प्रतिस्थापन के रूप में नहीं मानता)। इसलिए "रेग पूर्व भाषा में" को फिर से दिखाना वास्तव में संभव नहीं है, और मेजबान भाषा के साथ छोटे रजिस्टरों को इंटरव्यू करने से वास्तव में पठनीयता में सुधार नहीं हो सकता है (कम से कम, आपको ऐसा लगता है, लेकिन आपको संदेह है, अन्यथा आपके सवाल का पोस्ट नहीं होता) । तो यहाँ मेरी सलाह है
किसी अन्य उन्नत डेवलपर को अपना कोड दिखाएं (शायद /codereview// पर ) यह सुनिश्चित करने के लिए कि अन्य पठनीयता के बारे में सोचते हैं कि आप क्या करते हैं। इस विचार के लिए खुले रहें कि अन्य लोगों को आप के रूप में पठनीय के रूप में 100 लाइन रेज एक्सप नहीं मिल सकता है। कभी-कभी "इसकी आसानी से छोटे टुकड़ों में टूटने योग्य नहीं" की धारणा को केवल दूसरी जोड़ी की आंखों से दूर किया जा सकता है।
वास्तविक उत्तोलनशीलता का निरीक्षण करें - क्या नई आवश्यकताओं के आने पर आपका चमकदार रेज ऍक्स्प अभी भी अच्छा दिखता है और आपको उन्हें लागू करना और परीक्षण करना है? जब तक आपका reg एक्सपोज होता है, तब तक मैं इसे नहीं छूता, लेकिन जब भी कुछ बदलना होता है, तो मैं पुनर्विचार करूंगा कि क्या वास्तव में हर एक को इस एक बड़े ब्लॉक में डालना एक अच्छा विचार है - और (गंभीरता से!) बंटवारे पर पुनर्विचार करें! छोटे टुकड़े एक बेहतर विकल्प नहीं होगा।
स्थिरता का निरीक्षण करें - क्या आप प्रभावी रूप से वर्तमान रूप में रेग एक्सप को बहुत अच्छी तरह से डिबग कर सकते हैं? विशेष रूप से आपके द्वारा कुछ बदलने के बाद, और अब आपके परीक्षण आपको बताते हैं कि कुछ गलत है, क्या आपके पास एक रेग डिबगर है जो आपको मूल कारण खोजने में मदद कर रहा है? यदि डिबगिंग कठिन हो जाता है, तो यह आपके डिजाइन पर पुनर्विचार करने का एक अवसर भी होगा।