क्योंकि रेगेक्स डिफ़ॉल्ट रूप से लालची है। अर्थात। भाव .*
या .+
यथासंभव अधिक से अधिक वर्ण लेने का प्रयास करें। इसलिए <.+>
पहले <
. से फैला होगा अंतिम >
. तक . आलसी ऑपरेटर का उपयोग करके इसे आलसी बनाएं ?
:
regexp_replace(teststring, '<.+?>')
या
regexp_replace(teststring, '<.*?>')
अब, >
. की खोज करें पहले >
. पर रुकेगा का सामना करना पड़ा।
ध्यान दें कि .
>
शामिल है साथ ही, इसलिए लालची संस्करण (बिना ?
.) ) सभी >
. को निगल जाता है लेकिन आखिरी।