AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Wort aus String extrahieren

Ein Thema von rawsoul · begonnen am 17. Nov 2006 · letzter Beitrag vom 17. Nov 2006
Antwort Antwort
Benutzerbild von rawsoul
rawsoul

Registriert seit: 29. Okt 2006
Ort: Düsseldorf
249 Beiträge
 
Delphi 2005 Personal
 
#1

Wort aus String extrahieren

  Alt 17. Nov 2006, 12:43
Mahlzeit zusammen!

Ich möchte für mein nächstes Großprojekt (relativ gesehen - ich bin neu in Pascal) einzelne Wörter aus einem String extrahieren. Im Moment sieht der Code so aus:

Delphi-Quellcode:
Function WordFromString(Str:String;WordPos:Integer):String;
Var Character,FinalWord:String;i,j:Integer;
Begin
  j:=0;
  i:=0;
  repeat begin
           Finalword:='';
           repeat
             begin
               Character:=Str[1+i];
               i:=i+1;
               Finalword:=Finalword+Character
             end
           until
             (Character='') or (Character=' ');
           j:=j+1;
           end until
               j=WordPos;

  result:=Finalword

End;
Die Funktion soll dann mit WordFromString('eins zwei drei vier',3) das dritte Wort auslesen und als result festlegen. Soweit funktioniert es auch. Aber:
Sobald ich das letzte Wort auslesen lassen möchte, schmiert mir der Debugger ab :[

Es wäre genial, wenn mir da jemand helfen könnte oder einen nützlichen Tipp parat hat

LG
Frank Dumont
  Mit Zitat antworten Zitat
Benutzerbild von ste_ett
ste_ett

Registriert seit: 10. Sep 2004
Ort: Dülmen
464 Beiträge
 
Delphi 7 Professional
 
#2

Re: Wort aus String extrahieren

  Alt 17. Nov 2006, 12:53
Definiere
Zitat:
schmiert mir der Debugger ab :[
.
Damit kann man so nicht viel anfangen.
Stefan
"Geht nicht!" ist keine Fehlerbeschreibung und "Hab ich schon versucht!" keine Antwort!

Hey, it compiles! Ship it!
  Mit Zitat antworten Zitat
Benutzerbild von rawsoul
rawsoul

Registriert seit: 29. Okt 2006
Ort: Düsseldorf
249 Beiträge
 
Delphi 2005 Personal
 
#3

Re: Wort aus String extrahieren

  Alt 17. Nov 2006, 12:59
Hmm, nun gut...
Mir ist grad auf dem Klo eine Idee gekommen *g*

Das Problem lag daran, dass er den String anscheinen weiter auslesen möchte, wenn dieser bereits zu Ende ist. Sprich, das
Delphi-Quellcode:
until
             (Character='') or (Character=' ');
scheint nicht seinen Zweck erfüllt zu haben.

Habe das ganze nun so gefaked, dass dem String ein weiteres Leerzeichen (Im Quelltext) hinten angefügt wird. So funktioniert es tadellos. Aber das Ganze geht doch bestimmt sehr viel eleganter, oder?

@ste_ett: Was genau brauchst Du? Das Error-Fenster oder den Log? Ich werde aus beiden nicht sonderlich schlau, daher kann ich nicht feststellen, welcher davon nun der hilfreichere ist
Frank Dumont
  Mit Zitat antworten Zitat
BenjaminH

Registriert seit: 14. Okt 2004
Ort: Freiburg im Breisgau
713 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Wort aus String extrahieren

  Alt 17. Nov 2006, 13:26
ExplodeExplode kann das, was du willst.
Benjamin
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:13 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz