[Tustep-Liste] Worthaeufigkeitsliste

Michael Trauth trauth at uni-trier.de
Mi Jan 23 18:43:05 CET 2008


Lieber Herr Neumann,

Sie haben zwar schon etliche brauchbare Loesungen
erhalten, aber bei Ihrer Formulierung

> Es hat doch bestimmt jemand aus der KOPIERE-Fraktion
> ein kleines Prograemmchen...

fuehle ich mich irgendwie (wieso eigentlich?) per-
soenlich angesprochen. Da will ich meinen Senf gerne
dazugeben, und zwar in einer Weise, die moeglichst
wenig Projektspezifisches, ersatzweise aber ein
paar Kommentare enthaelt. Probieren Sie mal die
anhaengende kleine Prozedur aus, zuerst ohne Ver-
aenderungen, dann ggf. mit Ergaenzungen an den
markierten Stellen.

Viele Gruesse reihum von

Michael Trauth


=====================================================

#-   Einfache Prozedur zur Herstellung eines
#-   Häufigkeitswörterbuchs:

#de,,*
QU = quelldatei
*eof

#da,tmp.1'tmp.2'tmp.3,fr=-
#ko,<QU>,tmp.1,,+,*
        * Definition aller Zeichen, die im Inneren
        * eines Wortes vorkommen (die Liste muß ggf.
        * ergänzt werden, z.B. wenn Bindestrich-Wörter
        * als ein ganzes Wort behandelt werden und etwa
        * Zahlen ebenfalls als Wörter gelten sollen):
<wz       |</|%>@</|%>@>@</|%>@%>@>@</|
<wz       |%>@#.</|%>@>@#.</|%>@%>@>@#.</|
<wz       |#.</|#;<%</|#!<%</|#">%|
        * Erst alle Backslashes (= alle fakultativen
        * Trennstellen) rausschmeißen:
xx    1   :\<|<[wz]:::%<>\:
        * Dann alle Spitzklammern-Tags und alle
        * Zeichenformatierungen eliminieren:
>tz       <%><<<>>
xx    2   :<<<>>[tz]>>::
xx    2   :#>%+::#>%-::
        * Zuletzt alles in Blanks austauschen,
        * ausgenommen natürlich die Wörter selbst:
xx    3   ::<[wz]::<%: ::
*eof

#-  Jetzt den Text anhand der Spatien/Blanks in Wörter
#-  zerlegen und fürs alphabetische Sortieren vorbereiten:

#rv,tmp.1,tmp.2,mo=-,lo=+,pa=*
        * Als Trennzeichen zwischen Wörtern soll das
        * Blank gelten:
tr        | |
        * Angaben fürs Sortieren:
ssl       30 30
        * Regeln fürs Sortieren:
xs1       |ä|ae|ö|oe|ü|ue|ß|ss|%>@><>@||
xs2       |ä|az|ö|oz|ü|uz|ß|sz|%>@</|<=01X|
xs2       |%>@>@</|<=01Y|%>@%>@>@</|<=01Z|
*eof

#-  Dann diese Wörter sortieren:

#so,tmp.2,tmp.2,so=1+60,ti=1+60,lo=+

#-  und schließlich die identischen Wörter
#-  zusammenfassen und zählen:

#ra,tmp.2,tmp.3,mo=-,lo=+,pa=*,pr=-
        * Parameter SSL (= Sortierschlüssel-Länge) ist
        * obligat: Die Angabe '0' bedeutet, daß der Sor-
        * tierschlüssel schon im #SO eliminiert wurde.
ssl       0
        * Absolute Häufigkeit ausgeben:
ah        1
*eof

==================================================




---------------------------------------------------------------
Dr. Michael Trauth                  e-mail: trauth at uni-trier.de
Rechenzentrum                       office: Tel. 0651-201-3413
der Universitaet                            Fax  0651-201-3921
Universitaetsring                secretary: Tel. 0651-201-3417
D-54286 Trier
---------------------------------------------------------------



Mehr Informationen über die Mailingliste Tustep-Liste