Eftersom regex är girigt som standard. d.v.s. uttrycken .*
eller .+
försök att ta så många karaktärer som möjligt. Därför <.+> kommer att sträcka sig från den första
<
till den sista ?
:
regexp_replace(teststring, '<.+?>')
eller
regexp_replace(teststring, '<.*?>')
Nu söker du efter >
kommer att stanna vid den första
Observera att .
innehåller > likaså, därför den giriga varianten (utan
?
) sväljer all > men den sista.