webForumDet fria alternativet

Vad returnerar funktionen Len i vbscript?

13 svar · 246 visningar · startad av Mac

MacMedlem sedan mars 200135 inlägg
#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!!

nakozMedlem sedan dec. 1999653 inlägg
#2

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

------------------
nakoz :)

@ndersMedlem sedan juni 200032 969 inlägg
#3

len returnerar en strängs längd i tecken, alltså alltid en siffra.

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

nakozMedlem sedan dec. 1999653 inlägg
#4

@nders... testa koden jag pasta... funkar serru... :)

MVH

------------------
nakoz :)

nakozMedlem sedan dec. 1999653 inlägg
#5

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

------------------
nakoz :)

@ndersMedlem sedan juni 200032 969 inlägg
#6

nakoz, jag lär mig av dig varje dag... :e

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

nakozMedlem sedan dec. 1999653 inlägg
#7

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! :e :e :)

jag antar att jag inte ska berätta att jag testade hans kod i ett eget exempel på burken innan jag svarade? :e

MVH

------------------
nakoz :)

MacMedlem sedan mars 200135 inlägg
#8

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.

@ndersMedlem sedan juni 200032 969 inlägg
#9

men: man måste använda isnull för att kolla om något är null juh:

if isnull (len(str1)) then 'blah

mvh,

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

nakozMedlem sedan dec. 1999653 inlägg
#10

jag håller med @nders :e

[Redigerat av nakoz den 08 mar 2001]

@ndersMedlem sedan juni 200032 969 inlägg
#11

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,

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

[Redigerat av @nders den 08 mar 2001]

LarsGMedlem sedan dec. 200012 464 inlägg
#12

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.

------------------
essentitia preter non sans multiplicandum

@ndersMedlem sedan juni 200032 969 inlägg
#13

nu får vi lägga av med simultanpostningar minsann! :)

nakoz: jag såg det där... §e

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

[Redigerat av @nders den 08 mar 2001]

MacMedlem sedan mars 200135 inlägg
#14

hmm, tänkt att jag som har kodat vb i sååå många år har glömt bort det :r
Tackar så mycket!!

[Redigerat av Mac den 08 mar 2001]

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