webForumDet fria alternativet

Rexexp

ASP

4 svar · 546 visningar · startad av leniz

Medlem sedan aug. 2001676 inlägg
Frågan#1

Försöker komma på hur man ska skriva för att hitta och ersätta varje ställe i en textsträng där det är ett kommatecken direkt följt av en bokstav a-ö, A-Ö eller en siffra 0-9. Jag vill klämma in ett mellanslag där.

Mönstret här verkar stämma men hur skriver jag för att varje träff ska ersättas av ett mellanslag efter kommatecknet men före bokstaven eller siffran?

(\,)+[A-ZÅÄÖa-zåäö0-9]

Exempel ord1,ord2,ord3 ska bli ord1, ord2, ord3

Medlem sedan jan. 2005953 inlägg
#2

Någon anledning till att inte använda Replace()?

NyStrang = Replace(GammalStrang, ",", ", ")
Medlem sedan aug. 2001676 inlägg
#3

Ja, jag vill inte ersätta alla kommatecken utan bara de som har en bokstav eller siffra direkt efter sig. Har man redan gjort ett mellanslag efter kommatecknet ska det inte bli två mellanslag.

Medlem sedan juni 20019 519 inlägg
#4
Dim myRegExp, ResultString
Set myRegExp = New RegExp
myRegExp.Global = True
myRegExp.IgnoreCase = True
myRegExp.Pattern = "(,)([a-z\dåäö])"
ResultString = myRegExp.Replace(SubjectString, "$1 $2")
Medlem sedan aug. 2001676 inlägg
#5

Super :-) Stort tack!

256 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
114 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)