AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Die Ähnlichkeit eines Strings messen?

Ein Thema von Dragon27 · begonnen am 15. Feb 2009 · letzter Beitrag vom 16. Feb 2009
Antwort Antwort
Seite 1 von 2  1 2   
Dragon27

Registriert seit: 20. Nov 2003
Ort: Aßling
543 Beiträge
 
Delphi XE6 Enterprise
 
#1

Die Ähnlichkeit eines Strings messen?

  Alt 15. Feb 2009, 19:19
Hallo,

habt Ihr eine Idee, wie man messen kann wie ähnlich sich ein Sring ist. Also zum Beispiel:

Hallo ie geht es dir?
Hallo wie geht es dir?

Hier also 95 % ähnlich.

Leider habe ich über die Suche nichts gefunden zu diesem Thema.

Danke für Eure Hilfe!
Delphi is ......... DELPHI!!
  Mit Zitat antworten Zitat
quendolineDD

Registriert seit: 19. Apr 2007
Ort: Dresden
781 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Die Ähnlichkeit eines Strings messen?

  Alt 15. Feb 2009, 19:21
Du hast doch schon den mathematischen Lösungsweg gefunden.
Nun setze diesen einfach informatisch um, und du hast deine eigene Antwort gefunden.

Lg
Lars S.
Wer nicht mit der Zeit geht, geht mit der Zeit.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Die Ähnlichkeit eines Strings messen?

  Alt 15. Feb 2009, 19:21
Spontan fällt mir das SoundEx ein, das gibt es AFAIR in verschiedenen Ausprägungen. Ein Blick in die Hilfe sollte da weiterhelfen.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#4

Re: Die Ähnlichkeit eines Strings messen?

  Alt 15. Feb 2009, 19:22
Die Levenshtein-Distanz wäre hier ein guter Ansatz.
  Mit Zitat antworten Zitat
Dragon27

Registriert seit: 20. Nov 2003
Ort: Aßling
543 Beiträge
 
Delphi XE6 Enterprise
 
#5

Re: Die Ähnlichkeit eines Strings messen?

  Alt 15. Feb 2009, 19:26
Danke für die schnelle Antworten!

Zitat von NamenLozer:
Die Levenshtein-Distanz wäre hier ein guter Ansatz.
Ja das sieht gut aus! Aber ich glaube an der Umsetzung würde es scheitern. Ich wüsste nicht wie ich das in einen schnellen Delphicode packen soll.

Gibt es da nicht ein paar Codebeispiele?

Danke!
Delphi is ......... DELPHI!!
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#6

Re: Die Ähnlichkeit eines Strings messen?

  Alt 15. Feb 2009, 19:30
Hallo,

bei deiner Delphi-Version wäre es wohl am einfachsten, die Soundex-Routinen der Unit StrUtils zu nutzen. Eine Levenshtein-Implementierung findest du in der CodeLib.

Gruß Hawkeye
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Die Ähnlichkeit eines Strings messen?

  Alt 15. Feb 2009, 19:33
Ja die Suche nach Hier im Forum suchenLevenshtein leifert z.B.
http://www.delphipraxis.net/internal...ct.php?t=89364
Markus Kinzler
  Mit Zitat antworten Zitat
Dragon27

Registriert seit: 20. Nov 2003
Ort: Aßling
543 Beiträge
 
Delphi XE6 Enterprise
 
#8

Re: Die Ähnlichkeit eines Strings messen?

  Alt 15. Feb 2009, 19:50
Hallo,

danke für die vielen Antworten. Also den Levenshtein-Algo. habe ich mir durchgesehen. Sieht sehr sehr gut aus!
Trotzdem wollte ich auch noch wissen für was genau das SoundEX ist. Ich bekomme da einen String zurückgeliefert
der bei "Hallo" so aussieht: "H400" aber bei "hallo" kommt ebenfalls "H400".

Nun würde ich gerne verstehen wie man den Befehl SoundEx genau verwendet bzw. welche genauer von den beiden
Varianten ist.

Danke!
Delphi is ......... DELPHI!!
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#9

Re: Die Ähnlichkeit eines Strings messen?

  Alt 15. Feb 2009, 19:52
Zitat von Dragon27:
Nun würde ich gerne verstehen wie man den Befehl SoundEx genau verwendet bzw. welche genauer von den beiden
Varianten ist.
Hier wird z.B. erklärt wie der Algorithmus funktioniert:
http://de.wikipedia.org/wiki/Soundex
  Mit Zitat antworten Zitat
quendolineDD

Registriert seit: 19. Apr 2007
Ort: Dresden
781 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: Die Ähnlichkeit eines Strings messen?

  Alt 15. Feb 2009, 20:06
Zitat:
Hinsichtlich des zweiten Kritikpunktes, der nur groben Analyse, hat sich in letzter Zeit das folgende Beispiel etabliert: Gemäß dem „soundex“-Verfahren sind die Begriffe „Britney Spears“ und „bewährten Superzicke“ phonetisch identisch:

Britney => BRTN => B635,
Spears => SPRS => S162,
bewährten => BRTN => B635,
Superzicke => SPRZCK => S16222 => S162.
Ist natürlich ein sehr gutes kritisches Beispiel
Also ich würde an deiner Stelle eher die Levenshtein-Distanz nehmen ...
Lars S.
Wer nicht mit der Zeit geht, geht mit der Zeit.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 03:29 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