Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

[geloest] mit INSTR rueckwaerts suchen?

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 02.07.2007, 07:33    Titel: [geloest] mit INSTR rueckwaerts suchen? Antworten mit Zitat

Hi,

gibt es eine moeglich keit mit INSTR den letzten Teil eines Strings zu finden?

Also als Beispiel:

Code:

?INSTR ("Das ist ein Test und gleich noch ein Test","Test")

So sollte 13 ausgegeben werden, die Startposition des ersten "Test"

jetzt will ich aber abfragen wo die Letzte Position von Test ist, also in diesem Fall die Position des zweiten "Test"
_________________


Zuletzt bearbeitet von Eternal_pain am 04.08.2007, 18:27, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2529
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 02.07.2007, 08:06    Titel: Antworten mit Zitat

In VBScript gäbe es dafür extra InStrRev(), in FreeBasic scheint es dies gemäss

http://www.freebasic.de/Referenz.php?zeig=tuts&col1=a0d5d0&ref=yes&index=I

nicht zu geben. => Am besten halt selber eine Ersatz-FUNCTION für InStrRev() schreiben.
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 02.07.2007, 08:26    Titel: Antworten mit Zitat

habe das Problem mit einer Do/Loop schleife loesen koennen,
die solange von der zuletzt gespeicherte Position abfragt ob der String noch einmal vorhanden ist und dann die letzte gespeicherte zurueck liefert...
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 02.07.2007, 13:46    Titel: Antworten mit Zitat

Sonst auch der Code auf FreeBasic-Portal von Jojo. lächeln
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 02.07.2007, 14:36    Titel: Antworten mit Zitat

Genau, da hättest du doch als erstes suchen müssen durchgeknallt
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 02.07.2007, 14:37    Titel: Antworten mit Zitat

Hatte ich wirklich uebersehen verlegen
Waere genau das richtige gewesen...
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 04.08.2007, 18:27    Titel: Antworten mit Zitat

um das hier mal als geloest festzuhalten grinsen

InStrRev (verbessert)
und
InstrRev - Umgedrehtes Instr
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 04.08.2007, 21:13    Titel: Antworten mit Zitat

Hm, in VB ist StartPos per definitionem -1, wenn 's nicht angegeben ist und nicht 0, aber ich zwinge dich nicht, das zu ändern lachen
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 04.08.2007, 21:23    Titel: Antworten mit Zitat

Ich habe es vom prinzip wie das original "Instr" gemacht, wenn eine 0 position gibt es nicht und 0 ist wiederum gleichbedeutend mit nichts gefunden, was auch eine If/Then frage vereinfacht....
denn waere das ergebnis -1 waere es True bei null ist es False
somit kann ich eine einfache If InStrRev .... Then ohne besondere Abfrage machen zwinkern
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
ytwinky



Anmeldungsdatum: 28.05.2005
Beiträge: 2624
Wohnort: Machteburch

BeitragVerfasst am: 05.08.2007, 11:30    Titel: Antworten mit Zitat

Wenn die Länge vom Ersatz-String größer als die Länge vom Such-String ist, liefert Instr(SuchString, ErsatzString) sowieso 0, also brauchst du das in der Function nicht zu prüfen, spart ein wenig Zeit..
Gruß
ytwinky
_________________
v1ctor hat Folgendes geschrieben:
Yeah, i like INPUT$(n) as much as PRINT USING..
..also ungefähr so, wie ich GOTO..
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz