webForumDet fria alternativet

Radera blanksteg mellan taggar

3 svar · 281 visningar · startad av TainEvil

TainEvilMedlem sedan aug. 2002106 inlägg
#1

Jag har ett litet problem med en tabell som jag har som innehåller data som senare görs om till mail. I ett fält i tabellen (MSSQL) lagras själva mailet som xml-data med ett antal taggar. En utbruten del av mailet kan se ut så här:

<From>me@me.com</From><To>test@test.nu      </To><Subject>Test</Subject>

Problemet är alltså blankstegen som ligger efter mottagaradressen och innan slut-taggen. Går det att få bort dessa blanksteg med en replace eller liknande? Mottagaradressen varierar ju och antalet mellanslag kan diffa. Allting före och efter ovanstående exempel ska vara intakt efter ersättningen.

Givetvis är det mest korrekta att se till att det aldrig blir så här i tabellen och det är redan åtgärdat. Men jag skulle gärna vilja rätta upp den data som redan lagrats felaktigt.

doggelitoMedlem sedan juni 20003 076 inlägg
#2

Du kan ju alltid köra en replace om du vill.
Vet du maxantalet mellanslag?
Kanske finns snyggare lösning på detta men eftersom du bara ska göra det en gång så behöver det väl inte vara så himla snyggt! ;)

 Update ... Set Kolumn = Replace(Kolumn, '    </TO>', '</TO>') ...

Börja på maxantalet mellanslag och minska sedan med ett till det inte finns några kvar! :)

/red
gör en backup först så du inte råkar replaca sönder all data! :bire

TainEvilMedlem sedan aug. 2002106 inlägg
#3

Ja, det skulle ju givetvis fungera. Får väl göra iordning ett 20-tal UPDATE-satser som fixar detta, för mer än 20 mellanslag bör det aldrig vara. Tack för tipset!

Finns det något mer generellt sätt så skulle det vara av intresse rent kunskapsmässigt...

doggelitoMedlem sedan juni 20003 076 inlägg
#4

Jag har inte läst på om sql 2005 men det vore ju galant om man kan använda regexps till en sån här grej. Kanske att Microsoft byggt in stöd för det?! :)

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