Fordi regex er grådig som standard. dvs. udtrykkene .*
eller .+
prøv at tage så mange karakterer som muligt. Derfor <.+> vil strække sig fra den første
<
til den sidste > . Gør det doven ved at bruge lazy-operatoren
?
:
regexp_replace(teststring, '<.+?>')
eller
regexp_replace(teststring, '<.*?>')
Nu skal du søge efter >
stopper ved den første > stødt på.
Bemærk, at .
inkluderer > også, derfor den grådige variant (uden
?
) sluger al >
men den sidste.