webForumDet fria alternativet

Visa endast siffror

ASP

8 svar · 310 visningar · startad av ulf_gee

Medlem sedan mars 200233 inlägg
Frågan#1

Alltså,
Vi har en funktion som tar ut fyra tecken ur en sträng för att identifiera en viss person, men hur gör vi om denn sträng innehåller annat än siffror.
I ett fall har vi ett exempel på en person som bara har 3 tecken långt + en extra dubbelfnutt som inte ska vara med.
Funktionen tar alltid ut 4 tecken(i detta fall blir det 302").
Kan man skriva en funktion som kontrollerar så att strängen inte innehåller något annat än siffror eller finns där något annat sätt att lösa detta på?

Tackar!

Medlem sedan dec. 19998 577 inlägg
#2
If Not IsNumeric( variabel ) then
'datat innehåller annat än siffror
end if
Medlem sedan mars 200233 inlägg
#3

Naturligtvis.
Men finns där då i sådant fall något jag kan göra för att ta bort eller ersätta allt som inte är siffror in min sträng? (mer än att bara kontrollera att så är fallet)

Medlem sedan dec. 19998 577 inlägg
#4

Här är en gammal funktion jag byggde för länge sedan, kanske inte optimal, men fungerande:

Function fixintchr(str)
	For i = 1 To Len(str)
		If Asc(Mid(str,i,1)) > Asc("0")-1 AND Asc(Mid(str,i,1)) < Asc("9")+1 then
			str2 = str2 & Mid(str,i,1)
		End If
	Next
	fixintchr = Cint(str2)
End Function
Medlem sedan dec. 20003 887 inlägg
#5
Function fStr2Int(str)
  objRS = New RegExp

  objRS.Global = True
  objRS.IgnoreCase = True
  objRS.Pattern = "\D"

  fStr2Int = Nz(objRS.Replace(str, ""), -1) [blue]' -1 så var det inga siffror...[/blue]
End Function

Denna är väl likadan, men just skriven ;)

Medlem sedan dec. 19998 577 inlägg
#6

Vad är funktionen Nz du anropar för något?

Medlem sedan dec. 20003 887 inlägg
#7
Function Nz(test, isnullvalue)
  If IsNull(test) Or test = "" Then
    Nz = isnullvalue
  Else
    Nz = test
  End If
End Function

Så är den... finns inte Nz() i vbscript?

Medlem sedan mars 200233 inlägg
#8

inte vad jag vet
men jag fick Vide's kod att fungera i.a.f. varför jag är mycket tacksam.
Tack!

Medlem sedan dec. 19998 577 inlägg
#9

Nej, Nz finns inte i VBS.

ulf_gee skrev:

inte vad jag vet
men jag fick Vide's kod att fungera i.a.f. varför jag är mycket tacksam.
Tack!

Trevligt. :D

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