M Mac Medlem sedan mars 2001 35 inlägg Trådstart 8 mars 2001 12:50 #1 Jag vill kolla antalet tecken i en string och använder mig av Len(string). Vad returnerar denna när strängen är tom. I alla böcker står det null, men följande sats fungerar inte trots att jag vet att strängen ÄR tom:
if Len(string)=null then
utför
End if
Jag har även använt mig av Trim för att ta bort alla eventuella mellanslag.
Tack för all ev. hjälp!!
N nakoz Medlem sedan dec. 1999 653 inlägg du kanske skulle köra en response.write innan, för att se hur strängen ser ut.
Response.Write string
if Len(string)=null then
utför
End if
koden nedan använder jag, å den funkar tokbra
minString = "hejsan"
If Len(minString)=null Then
Response.Write "den e tom"
Else
Response.Write minString
End if
MVH
@nders Medlem sedan juni 2000 32 967 inlägg len returnerar en strängs längd i tecken, alltså alltid en siffra.
N nakoz Medlem sedan dec. 1999 653 inlägg @nders... testa koden jag pasta... funkar serru...
MVH
N nakoz Medlem sedan dec. 1999 653 inlägg annars kan vi ju kompromissa?
if Len(string)=null OR Len(string)=0 then
utför
End if
kanske ordnar de du vill?
annars kan du ta mitt exempel ovan och testa...
MVH
@nders Medlem sedan juni 2000 32 967 inlägg nakoz, jag lär mig av dig varje dag...
N nakoz Medlem sedan dec. 1999 653 inlägg haha... höjden av makt?
nakoz, jag lär mig av dig varje dag...
oh boy! dehär e den bästa dagen i mitt liv!
jag antar att jag inte ska berätta att jag testade hans kod i ett eget exempel på burken innan jag svarade?
MVH
M Mac Medlem sedan mars 2001 35 inlägg Jag hämtar strängen från en databas vars fält jag vet är tomt.
if Trim(Len(RecSet("curr_days"))) = null then
Response.Write "0"
End if
Då jag skriver ut ovanstående villkor står det inget.
@nders Medlem sedan juni 2000 32 967 inlägg men: man måste använda isnull för att kolla om något är null juh:
if isnull (len(str1)) then 'blah
mvh,
N nakoz Medlem sedan dec. 1999 653 inlägg jag håller med @nders
[Redigerat av nakoz den 08 mar 2001]
@nders Medlem sedan juni 2000 32 967 inlägg dessutom har du dina strängfunktioner i fel ordning.
prova så här:
if isnull(Len(trim(RecSet("curr_days")))) or len(trim(RecSet("curr_days"))) = 0 then
Response.Write "0"
End if
mvh,
L LarsG Medlem sedan dec. 2000 12 464 inlägg Skall man inte använda funktionen IsNull för att testa om något är null?
if IsNull(expression) then
Från MS om VB-script
Expressions that you might expect to evaluate to True under some circumstances, such as If Var = Null and If Var <> Null, are always False.
@nders Medlem sedan juni 2000 32 967 inlägg nu får vi lägga av med simultanpostningar minsann!
nakoz: jag såg det där...
M Mac Medlem sedan mars 2001 35 inlägg hmm, tänkt att jag som har kodat vb i sååå många år har glömt bort det
Tackar så mycket!!
[Redigerat av Mac den 08 mar 2001]