Karena regex serakah secara default. Yaitu. ekspresi .* atau .+ mencoba untuk mengambil karakter sebanyak mungkin. Oleh karena itu <.+> akan terbentang dari < . pertama ke > last terakhir . Buat malas dengan menggunakan operator malas ? :
regexp_replace(teststring, '<.+?>')
atau
regexp_replace(teststring, '<.*?>')
Sekarang, cari > akan berhenti di > . pertama ditemui.
Perhatikan bahwa . termasuk > juga, oleh karena itu varian serakah (tanpa ? ) menelan semua > tapi yang terakhir.