Wie lese ich einen String nach einem mehrfach vorkommenden Buchstaben aus?
Hallo,
um es zu verdeutlichen, ich möchte aus einen String (Bsp.: ich/bin/ein/string/blabla) die letzten Buchstaben auslesen in diesem Fall wäre es blabla.
Ich kann übrigens auch nicht mit Index arbeiten, da der String vom User frei wählbar ist wodurch sich die Länge der Buchstaben verändert.
Danke im Vorraus.
Mfg
GERz0cKErZ
um es zu verdeutlichen, ich möchte aus einen String (Bsp.: ich/bin/ein/string/blabla) die letzten Buchstaben auslesen in diesem Fall wäre es blabla.
Ich kann übrigens auch nicht mit Index arbeiten, da der String vom User frei wählbar ist wodurch sich die Länge der Buchstaben verändert.
Danke im Vorraus.
Mfg
GERz0cKErZ
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 301288
Url: https://administrator.de/contentid/301288
Ausgedruckt am: 22.11.2024 um 21:11 Uhr
13 Kommentare
Neuester Kommentar
Moin.
Da gibt es mehrere Möglichkeiten:
Variante 1:
Splitte den String anhand des Slashes (/) mit der Funktion Split() in ein Array und verwende UBound(array) um den letzten Wert aus dem Array zu ermitteln und als Index für den Abruf aus dem Array zu nutzen.
Variante 2:
Benutze die Funktion InStrRev() um den Index der Position des letzten Slashes zu ermitteln. Mit diesem Index + 1 kannst du dann die Funktion MID() füttern.
Variante 3:
Regular Expressions verwenden. Aber damit fang ich gar nicht erst an, das sind 100% böhmische Dörfer für dich
Gruß jodel32
Da gibt es mehrere Möglichkeiten:
Variante 1:
Splitte den String anhand des Slashes (/) mit der Funktion Split() in ein Array und verwende UBound(array) um den letzten Wert aus dem Array zu ermitteln und als Index für den Abruf aus dem Array zu nutzen.
Variante 2:
Benutze die Funktion InStrRev() um den Index der Position des letzten Slashes zu ermitteln. Mit diesem Index + 1 kannst du dann die Funktion MID() füttern.
Variante 3:
Regular Expressions verwenden. Aber damit fang ich gar nicht erst an, das sind 100% böhmische Dörfer für dich
Gruß jodel32
OK hier geht es um VB.net, ich war wegen der Kategorie von VBA ausgegangen. Das nächste mal bitte direkt im Post angeben. Danke.
Ist aber kein Problem, in VB.net bekommst du in Länge eines Array mit
Davon ziehst du 1 ab dann hast du den letzten Index...fertsch
Ist aber kein Problem, in VB.net bekommst du in Länge eines Array mit
DeinArray.length()
Dim arrString() as String = txtFilePath.Text.Split("/")
msgbox(arrString(arrString.length()-1))
Zitat von @GERz0cKErZ:
Liege ich damit richtig, dass wenn man bei "String".Lenght - 1 den letzten Wert bekommt?
String ist ein reserviertes Keyword in VB.Net du solltest einen anderen Namen für die Variable wählen ...Siehe mein Beispiel!Liege ich damit richtig, dass wenn man bei "String".Lenght - 1 den letzten Wert bekommt?
Auch bei einem String wäre das nicht korrekt. Das Length() liefert nur bei einem Array die Anzahl der Elemente in diesem Im Gegensatz dazu wäre das bei einem String die Anzahl der Zeichen des Strings.
Das liegt daran das der WebClient das File cached und beim erneuten Abruf das File aus dem Cache auf die Platte geschrieben wird, deswegen ist er so schnell fertig.
Jetzt hast du zwei Möglichkeiten:
Entweder du fügst bei jedem Aufruf einen URL-Parameter mit einem zufällig generierten String hinten an die Download-URL an dann triggerst du jedes mal einen kompletten Download von der Quelle.
Praktikablerweise nutzt man hier oft die Math.Random Funktionen oder auch die Ticks Eigenschaft des DateTime Objekts zur Generierung des Wertes.
Oder du nutzt statt des WebClient einen HTTPRequest.
Jetzt hast du zwei Möglichkeiten:
Entweder du fügst bei jedem Aufruf einen URL-Parameter mit einem zufällig generierten String hinten an die Download-URL an dann triggerst du jedes mal einen kompletten Download von der Quelle.
https://domain.de/filexyz.zip?1222772652793
Praktikablerweise nutzt man hier oft die Math.Random Funktionen oder auch die Ticks Eigenschaft des DateTime Objekts zur Generierung des Wertes.
Oder du nutzt statt des WebClient einen HTTPRequest.
[OT]
Neulich im Bereich "VB for Applications"...
... in der Frage "Wie lese ich einen String nach einem mehrfach vorkommenden Buchstaben aus?"...
...in der es eigentlich um das letzte Element in einem Array ging...
... und weder um Strings noch um mehrfach vorkommende Buchstaben noch um VBA...
...da sacht doch TO unvermittelt ...
Ach was, das glaubt mir doch keiner...
Wir Bremer würden derartige Vorkommnisse ja nur durch die Blume bewerten. Wenn überhaupt.
Wahrscheinlich würden wir schulterzuckend sagen
Grüße
Biber, der dachte, ihn könnte hier im Forum nix mehr überraschen
[/OT]
Neulich im Bereich "VB for Applications"...
... in der Frage "Wie lese ich einen String nach einem mehrfach vorkommenden Buchstaben aus?"...
...in der es eigentlich um das letzte Element in einem Array ging...
... und weder um Strings noch um mehrfach vorkommende Buchstaben noch um VBA...
...da sacht doch TO unvermittelt ...
Zitat von @GERz0cKErZ:
Ich habe einen Webclient der per Button ein Video herunterlädt, wenn der Download abgeschlossen ist und ich wieder auf den button drücke lädt er die Datei garnicht erst neu runter sondern es kommt sofort die Meldung, dass der Download abgeschlossen wäre. Wie setze ich den WC zurück oder restartet ihn? Habe wenig bis gar keine Ahnung von WebClient.
Ich habe einen Webclient der per Button ein Video herunterlädt, wenn der Download abgeschlossen ist und ich wieder auf den button drücke lädt er die Datei garnicht erst neu runter sondern es kommt sofort die Meldung, dass der Download abgeschlossen wäre. Wie setze ich den WC zurück oder restartet ihn? Habe wenig bis gar keine Ahnung von WebClient.
Ach was, das glaubt mir doch keiner...
Wir Bremer würden derartige Vorkommnisse ja nur durch die Blume bewerten. Wenn überhaupt.
Wahrscheinlich würden wir schulterzuckend sagen
"Wer den Alkohol nicht verträgt, der sollte ihn besser aus dem Balg lassen."
Grüße
Biber, der dachte, ihn könnte hier im Forum nix mehr überraschen
[/OT]
ja ja der @Biber ... der den verbrauchten Alk gleich noch zum Baum trägt
Komm ich schmeiss noch ne Runde ... is ja eh Freidaach.
Komm ich schmeiss noch ne Runde ... is ja eh Freidaach.