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