(नोट: शीर्षक स्पष्ट करने के लिए प्रतीत नहीं होता है - अगर किसी को इस मैं इसके लिए सभी हूँ अलग तरीके से व्यक्त कर सकते हैं!)एकल वर्ण मिलान के लिए वैकल्पिक या वर्ण वर्ग का उपयोग करना?
इस regex को देखते हुए: (.*_e\.txt)
है, जो कुछ फ़ाइल नाम से मेल खाता है, मैं कुछ अन्य एकल वर्ण जोड़ने की जरूरत e
के अतिरिक्त प्रत्यय। क्या मुझे एक चरित्र वर्ग चुनना चाहिए या क्या मुझे इसके लिए एक विकल्प का उपयोग करना चाहिए? (या यह वास्तव में कोई फर्क पड़ता है ??)
यही है, जो निम्नलिखित दो की "बेहतर" लगता है, और यही कारण है:
क) (.*(e|f|x)\.txt)
, या
ख) (.*[efx]\.txt)
आप कठिन __any__ प्रदर्शन को मापने के आगे बढ़ा दिया जाएगा दोनों के बीच अंतर। चिंता करना बंद करो और केवल स्पष्ट का उपयोग करें। – bobbogo
@bobbogo: ध्यान दें कि सवाल विशेष रूप से प्रदर्शन के बारे में नहीं था, लेकिन बस "बेहतर" + क्यों। –
@ मार्टिन: मैं पूरी तरह से सहमत हूं। साफ़ कोड यहां प्राथमिकता है। – bobbogo