Einzelnen Beitrag anzeigen

emteg

Registriert seit: 16. Jun 2005
71 Beiträge
 
Delphi 2009 Architect
 
#1

Sonderzeichen in text finden

  Alt 3. Sep 2005, 23:42
Ich möchte ein kleines programm schreiben, dass eine textdatei einliest und dabei herausfindet, in welcher sprache der text geschrieben ist. Dies soll durch das suchen nach zeichen geschehen, die nur in der entsprechenden sprache vorkommen. Vorerst mal mit den Sprachen Deutsch, Englisch, Französisch, Spanisch, Italienisch und Türkisch.

Beispiel:
"ß" gibts nur in Deutsch
"é" gibts in Französchisch, Spanisch, Italienisch
"ñ" gibts nur in Spanisch

Am ende wird geschaut, welche zeichen vorkommen und welche sprachen daraus in Frage kommen ("der text ist wahrschienlich deutsch (D: 67%, E: 12%, S: 3%)").

Jetzt ist meine Frage, was der beste weg ist, sich die entsprechenden zeichen aus dem text zu suchen. Der Suchalgorithmus soll quasi alles von A-Z, 0-9 und alle Satzzeichen ignorieren und den rest auf die sprache prüfen.
Kurz: wie suche ich nach allem außer A-Z, 0-9 und satzzeichen?
Sollte ich die ausgeschlossenen Zeichen in einen array packen, etwa in der art:
(Pseudo code)
Delphi-Quellcode:
ignored:=false;
for i:=0 to 30 do
begin
  if zeichen=Ausgeschlossen[i] then
    ignored:=true;
end;
if ignored=false then
  ListBox.Items.Add(zeichen);
Upper/Lowercase ist klar, eventuell mache ich mir auch eine Lern routine, bei der ich einen text einlese und dann sage "das war spanisch".
Außerdem frage ich mich, ob es eventl. probleme mit verschiedenen zeichensätzen geben könnte
  Mit Zitat antworten Zitat