webForumDet fria alternativet

Bort med mellanslag!

ASP

26 svar · 587 visningar · startad av fredrik99 · sida 2 av 2

Frågan, av fredrik99

Hur gör man för att ta bort alla mellanslag före första bokstaven, och alla mellanslag efter sista bokstaven? Exempel: " Hej svej.. " Skall bli: "Hej svej.." Finns det någon smart o enkel lösning? :OO

Läs frågan i sin helhet →
Medlem sedan maj 2000426 inlägg
#21

Nu efter en tid har källkoden ändrats, men trim-funktionen "vill inte" funka. Databasen innehåller nästan bara mellanslag.

Kanske någon som har några minuter över? :)


<%
function BinToText(varBinData, intDataSizeInBytes)
const adFldLong = 128
const adVarChar = 200
set objRS = Server.CreateObject("ADODB.Recordset")
objRS.Fields.Append "txt", adVarChar, intDataSizeInBytes, adFldLong
objRS.Open
objRS.AddNew
objRS.Fields("txt").AppendChunk(varBinData)
tmp = objRS("txt").Value
objRS.Close
BinToText = tmp
end function

Set objHTTP = Server.CreateObject("Microsoft.XMLHTTP")
objHTTP.Open "GET", "http://www.adressen.se/hej.txt", False

objHTTP.Send
strHTML = BinToText(objHTTP.responseBody,35000)
Set objHTTP = Nothing

Set objRegExp1 = New regexp
strReplace1 = ""
objRegExp1.Global = true
objRegExp1.IgnoreCase = true
objRegExp1.Pattern = "<tr(.*)>"
strHTML2 = objRegExp1.Replace(strHTML, strReplace1)
Set objRegExp1 = Nothing

Set objRegExp2 = New regexp
strReplace2 = ""
objRegExp2.Global = true
objRegExp2.IgnoreCase = true
objRegExp2.Pattern = "</tr(.*)>"
strHTML3 = objRegExp2.Replace(strHTML2, strReplace2)
Set objRegExp2 = Nothing

Set objRegExp3 = New regexp
strReplace3 = ""
objRegExp3.Global = true
objRegExp3.IgnoreCase = true
objRegExp3.Pattern = "<td(.?)>"
strHTML4 = objRegExp3.Replace(strHTML3, strReplace3)
Set objRegExp3 = Nothing

Set objRegExp4 = New regexp
strReplace4 = ";"
objRegExp4.Global = true
objRegExp4.IgnoreCase = true
objRegExp4.Pattern = "</td>"
strHTML5 = objRegExp4.Replace(strHTML4, strReplace4)
Set objRegExp4 = Nothing

str=strHTML5
set r = new regexp
r.ignorecase = true
r.global = true
r.pattern = "<a.*?>(.*?)<\/a>" 
strHTML6 = r.replace(str, "$1")

Set objRegExp6 = New regexp
strReplace6 = ";"
objRegExp6.Global = true
objRegExp6.IgnoreCase = true
objRegExp6.Pattern = "<IMG SRC=(.*)"
strHTML7 = objRegExp6.Replace(strHTML6, strReplace6)
Set objRegExp6 = Nothing

Set objRegExp7 = New regexp
strReplace7 = ""
objRegExp7.Global = true
objRegExp7.IgnoreCase = true
objRegExp7.Pattern = "</FONT>"
strHTML8 = objRegExp7.Replace(strHTML7, strReplace7)
Set objRegExp7 = Nothing

Set objRegExp8 = New regexp
strReplace8 = ""
objRegExp8.Global = true
objRegExp8.IgnoreCase = False
objRegExp8.Pattern = "<TD Class(.*)"
strHTML9 = objRegExp8.Replace(strHTML8, strReplace8)
Set objRegExp8 = Nothing

array1 = split(strHTML9,";")
array1(0) = Replace(trim(array1(0)),VbCrlf,"") 
array1(0) = Replace(array1(0),chr(9),"")
array1(1) = Replace(trim(array1(1)),VbCrlf,"") 
array1(1) = Replace(array1(1),chr(9),"")
array1(2) = Replace(trim(array1(2)),VbCrlf,"") 
array1(2) = Replace(array1(2),chr(9),"")
array1(3) = Replace(trim(array1(3)),VbCrlf,"") 
array1(3) = Replace(array1(3),chr(9),"")
array1(4) = Replace(trim(array1(4)),VbCrlf,"") 
array1(4) = Replace(array1(4),chr(9),"")
array1(5) = Replace(trim(array1(5)),VbCrlf,"") 
array1(5) = Replace(array1(5),chr(9),"")
%>
Medlem sedan mars 20015 287 inlägg
#22

Har du en skarp länk till en sådan textfil som du arbetar mot?

Medlem sedan maj 2000426 inlägg
#23

Javisst :E

Länk

Medlem sedan mars 20015 287 inlägg
#24

Skippa alla replacerader o lägg det i en funktion.

array1 = split((strHTML9),";")

For I = 0 to ubound(array1)
	response.write cleanup(array1(I)) & "<br>"
Next

Function cleanup(str)

str = trim(Replace(str,chr(9),""))
str = Replace(str,chr(10),"")
str = Replace(str,chr(13),"")
cleanup = Replace(str,chr(32),"")

End function
Medlem sedan maj 2000426 inlägg
#25

Bara ett problem, jag vill bara ta bort mellanrum i början och i slutet, inte i mitten i variablen.

Exempel
----Lars-Nilsson-----

- = Mellanrum

Blir:
LarsNilsson

Går detta att fixa?

Medlem sedan jan. 20032 285 inlägg
#26

Använd bara Trim(" Anders Nilsson ") istället för Replace(" Anders Nilsson ", " ", ""). :)

Medlem sedan maj 2000426 inlägg
#27

Red.

Dundertack till alla som har hjälpt mig :)

262 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)