यदि आप रुचि रखते हैं कि जब आप |
का उपयोग करते हैं तो क्या होता है वैकल्पिक ऑपरेटर
, उत्तर आसान है:regex इंजन अभिव्यक्ति और इनपुट स्ट्रिंग को बाएं से संसाधित करता है से दाएं ।
उदाहरण के तौर पर आपके पास जो पैटर्न है, उसे लेते हुए ^.{8}|.{12}$|.{4}
बाईं ओर से इनपुट स्ट्रिंग का निरीक्षण करना शुरू करता है, और ^.{8}
. की जांच करता है - पहले 8 अक्षर। उन्हें ढूँढता है और यह एक मैच है। फिर, आगे बढ़ता है और .{12}$
, और फिर से एक मैच है। फिर, किसी भी 4-वर्ण वाली स्ट्रिंग का मिलान किया जाता है।
इसके बाद, आपके पास ^.{8}|.{4}|.{12}$
. है . व्यंजक को फिर से बाएं से दाएं पार्स किया जाता है, पहले 8 वर्णों का पहले मिलान किया जाता है, लेकिन इसके बाद, केवल 4-वर्ण अनुक्रमों का मिलान किया जाएगा, .{12}
कभी भी आग नहीं लगेगी क्योंकि .{4}
मैच!