Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Herrausfinden, ob im String ein bestimmtest wort vorhanden (https://www.delphipraxis.net/52942-herrausfinden-ob-im-string-ein-bestimmtest-wort-vorhanden.html)

Christian18 7. Sep 2005 09:40


Herrausfinden, ob im String ein bestimmtest wort vorhanden
 
Wie kann ich herrausfinden, ob in einem bestimmten string ein bestimmtest wort vorhanden ist???

Also:

Wort: Test

String: Das ist ein kleiner Test.

Funktion soll in diesem Fall True zurückgeben.

MFG Christian18

Sharky 7. Sep 2005 09:43

Re: Herrausfinden, ob im String ein bestimmtest wort vorhand
 
Hai Christian,

das kannst Du über die Funktion Delphi-Referenz durchsuchenPos machen:
Delphi-Quellcode:
function WortInString (const awort, astring :string) : boolean;
begin
  result := Pos(awort,astring) > 0;
end;

Christian18 7. Sep 2005 09:46

Re: Herrausfinden, ob im String ein bestimmtest wort vorhand
 
Zitat:

Zitat von Sharky
Hai Christian,

das kannst Du über die Funktion Delphi-Referenz durchsuchenPos machen:
Delphi-Quellcode:
function WortInString (const awort, astring :string) : boolean;
begin
  result := Pos(awort,astring) > 0;
end;

OK, danke funktioniert

DaFox 7. Sep 2005 09:49

Re: Herrausfinden, ob im String ein bestimmtest wort vorhand
 
Die einfachste und intuitivste Lösung ist, wie Sharky es oben schreibt, das Suchwort per Pos() zu ermitteln. Einer der effizientesten dürfte aber Bei Google suchenBoyer-Moore Horspool sein.

Gruß,
Markus

Christian18 7. Sep 2005 10:21

Re: Herrausfinden, ob im String ein bestimmtest wort vorhand
 
Hallo,

ich bins nochmal. Eine Frage habe ich noch. Bei der oben genannten Variante muss das wort wirklich richtig geschrieben sein. was ist wenn das wort klein geschrieben wird und dann aber im text das wort groß ist. kann man das auch noch irgendwie berücksichtigen???

Bsp.

Wort: cola

Text: Ich möchte gerne eine Cola haben.

MFG Christian18

BenjaminH 7. Sep 2005 10:24

Re: Herrausfinden, ob im String ein bestimmtest wort vorhand
 
Delphi-Quellcode:
function WortInString (const awort, astring :string) : boolean;
begin
  result := Pos(Uppercase(awort),uppercase(astring)) > 0;
end;

leddl 7. Sep 2005 10:30

Re: Herrausfinden, ob im String ein bestimmtest wort vorhand
 
Schau dir mal die Funktion Delphi-Referenz durchsuchenLowerCase bzw. Delphi-Referenz durchsuchenUpperCase genauer an.

//Edit:
Ups, da hätte ich vielleicht vor dem Antworten nochmal refreshen sollen :lol:

Sharky 7. Sep 2005 10:31

Re: Herrausfinden, ob im String ein bestimmtest wort vorhand
 
Hai,

zu Sicherheit dann lieber so:
Delphi-Quellcode:
result := Pos(AnsiLowerCase(awort),AnsiLowerCase(astring)) > 0;


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:17 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