05. september 2009 - 09:24
Der er
8 kommentarer og 1 løsning
Fjerne HTML tags fra streng, men beholde <br/> tagget.
Hejsa. Jeg skal konvertere nogle data fra et gammelt CMS system over i et nyt. I den forbindelse skal jeg hive nogle tekst strenge ud af det gamle og lægge over i det nye. Men de strenge jeg trækker ud er fyldt med HTML tags. Dem skal jeg have fjernet. Til det bruger jeg 'Regex'. Mit problem er bare at jeg meget gerne ville beholde et enkelt tag. Nemlig '<br/>'. Alle andre HTML tags skal fjernes. Kan man det? Og i så fald, hvordan? Pt. ser min kode således ud: string stripped = Regex.Replace(Oldstring,@"<(.|\n)*?>",string.Empty); Mvh. Lasse
Annonceindlæg fra Barco
Er jeres mødelokaler sikre nok?
Den moderne arbejdsplads er i stigende grad afhængig af mødelokaler til at fremme samarbejde, men dette skift medfører også stigende sikkerhedsudfordringer.
05. september 2009 - 10:01
#1
Hvis det er sådan en engangskonvertering, kan vi jo lave et lille hack. Erstat <br/> med #####br/##### Fjern tags som du gør nu Erstat #####br/##### med <br/>
05. september 2009 - 10:13
#3
Jeg samler slet ikke på point, tak. Svar selv, accepter dit eget svar. Man skal nok kun gøre lige det her ved en engangskonvertering, hvor man forhåbentlig kan kontrollere, at der ikke står ##### noget steds.
07. september 2009 - 02:02
#4
Jeg betragter Eriks løsning som meget fristende, fordi den er nem. Vil du absolut bruge regex så prøv: Regex.Replace(s, "<(?!br)[^>]*>", "", RegexOptions.IgnoreCase)