If-Abfrage in VBS
...
Hallo,
ich habe folgende Abfrage probiert (die Variable single_ip beinhaltet die IP-Adresse, z.B. 172.31.137.110) :
if single_ip = "172.31.137.116" then
Wscript.echo("172er Netz")
else
Wscript.echo("192er Netz")
end if
Das funktioniert soweit. Ich möchte nun aber nicht gezielt auf EINE IP-Adresse vergleichen, sondern auf einen gesamten Bereich, z.B. 172.31.137.* .
Wie gestalte ich die Abfrage. Bitte um Hilfe eines Wissenden. Vielen Dank.
Tom
//EDIT
Konnte das Problem selbst lösen.
Dim strText As String
strText = "Auto, Motorrad, Fahrrad"
Dim strTeil As String
Wenn man das Wort "Auto" heraustrennen will, nimmt man am besten die "Left" Funktion. Diese Funktion nimmt 2 Argumente entgegen. Den Mustertext und die Anzahl der Zeichen, die herauskopiert werden sollen.
strTeil = Left(strText, 4)
Tom
Hallo,
ich habe folgende Abfrage probiert (die Variable single_ip beinhaltet die IP-Adresse, z.B. 172.31.137.110) :
if single_ip = "172.31.137.116" then
Wscript.echo("172er Netz")
else
Wscript.echo("192er Netz")
end if
Das funktioniert soweit. Ich möchte nun aber nicht gezielt auf EINE IP-Adresse vergleichen, sondern auf einen gesamten Bereich, z.B. 172.31.137.* .
Wie gestalte ich die Abfrage. Bitte um Hilfe eines Wissenden. Vielen Dank.
Tom
//EDIT
Konnte das Problem selbst lösen.
Dim strText As String
strText = "Auto, Motorrad, Fahrrad"
Dim strTeil As String
Wenn man das Wort "Auto" heraustrennen will, nimmt man am besten die "Left" Funktion. Diese Funktion nimmt 2 Argumente entgegen. Den Mustertext und die Anzahl der Zeichen, die herauskopiert werden sollen.
strTeil = Left(strText, 4)
Tom
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 57604
Url: https://administrator.de/contentid/57604
Ausgedruckt am: 26.11.2024 um 09:11 Uhr
7 Kommentare
Neuester Kommentar
und was machst du, wenn du die IP 172.31.137.1 hast? dann liefert dein befehl "172.31.1" zurück. du musst schon nach dem letzten in dem string vorkommenden punkt suchen und danach alles abschneiden. wie die funktion dazu heisst, weiss ich im moment allerdings auch nicht. oder du baust dir direkt nen regulären ausdruck
Moin Kopfleer,
was stiehl richtigerweise meint ist, dass Dein Algorithmus wackelig ist, weil er fest verdrahtet 10 Zeichen vor dem letzten Token unterstellt.
Dabei kann theoretisch aus mal statt einer IP 172.31.137.xxx aich eine IP 10.10.1.xxx dabeisein.
Oder, um Dein Beispiel von oben noch mal zu bemühen:
--->wenn Du erst die Position des letzten Kommas in "Auto, Motorrad, Fahrrad" oder die Position des letzten Punkts in einer IP ermitteltst, dann wird es flexibler und allgemeiner verwendbar.
Gruss
Biber
was stiehl richtigerweise meint ist, dass Dein Algorithmus wackelig ist, weil er fest verdrahtet 10 Zeichen vor dem letzten Token unterstellt.
Dabei kann theoretisch aus mal statt einer IP 172.31.137.xxx aich eine IP 10.10.1.xxx dabeisein.
Oder, um Dein Beispiel von oben noch mal zu bemühen:
'lastcommaDemo.vbs
strText1 = "Auto, Motorrad, Fahrrad"
wscript.echo "strText1: " & strText1
wscript.echo "Left(strText1,4): " & Left(strText1,4)
strText2 = "Motorrad, Fahrrad, Auto"
wscript.echo "strText2: " & strText2
wscript.echo "Left(strText2,4): " & Left(strText2,4)
lastcommapos=InstrRev(strtext1, ",")
wscript.echo "letztes Token Strtext1: " & Mid(StrText1,lastcommapos+1)
lastcommapos=InstrRev(strtext2, ",")
wscript.echo "letztes Token Strtext2: " & Mid(StrText2,lastcommapos+1)
>cscript //nologo e:\lastCommaDemo.vbs
strText1: Auto, Motorrad, Fahrrad
Left(strText1,4): Auto
strText2: Motorrad, Fahrrad, Auto
Left(strText2,4): Moto
letztes Token Strtext1: Fahrrad
letztes Token Strtext2: Auto
--->wenn Du erst die Position des letzten Kommas in "Auto, Motorrad, Fahrrad" oder die Position des letzten Punkts in einer IP ermitteltst, dann wird es flexibler und allgemeiner verwendbar.
Gruss
Biber