webForumDet fria alternativet

RegExp hårdkontroll

3 svar · 211 visningar · startad av Eitraz

EitrazMedlem sedan sep. 2002366 inlägg
#1

Tjo!

Vill att t ex <b >tjosan svejsan</ b> ska bytas ut till feltsil men <b >tjosan svejsan ska inte bytas ut om det inte finns en sluttag.

Borde ju bli något sånthär:

re.Pattern = "(<u>)(\w+)(</u>)"
strText = re.Replace(strText, "<u>$2</u>")

detta funkar om man har ett ord mellan tagsen, men är det det minsta lilla mellanslag etc så funkar det inte.
Vad ska man skriva istället (eller lägga till) för (\w+) för att den ska ta Alla tecken, symboler etc.

voigtann1Medlem sedan juni 20019 519 inlägg
#2

varför gör du inte bara:

re.Pattern = "&lt;(b|/b|i|/i|u|/u)&gt;"
strText = re.Replace(strText, "<$1>")

på så sätt fungera b /b i /i etc etc.. bara sätt in i () vad du vill ha för funktioner :)

red.

okey du ville ha <b>test saa</b> så ska det bara fungera:

re.Pattern = "&lt;(b)&gt;((.|\n)+?)&lt;(/b)&gt;"
strText = re.Replace(strText, "<b>$2</b>")

har inte testat koderna men dom bör fungera :)

EitrazMedlem sedan sep. 2002366 inlägg
#3

<b >tjohej och inte <b >tjohejsan hoppsan</b > <u>test test
och <u >understryken text</u > <u >

skulle den funktionen tyvärr aldrig palla med.. där endast tjohejsan hoppsan skulle bli fet och understryken text kursivt

EitrazMedlem sedan sep. 2002366 inlägg
#4

ok, jag får testa ;)

130 ms totalt · 3 externa anrop · v20260731065814-full.7de19299
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)