ich studier' Geschichte und hab' mit Programmieren leider so gar nichts am Hut; ich arbeite mich grade für meine Diplomarbeit durch mittellateinische Enzyklopädien und suche darin nach Belegen zu Afrika (dem Kontinent). Da diese Enzyklopädien verdammt lang sind (22.000 Seiten bei Vinzenz von Beauvais beispielsweise) ist das analog praktisch nicht zu bewältigen (schon gar nicht mit meinen Lateinkenntnissen); bzw. schon, aber halt nur die Kapitel, die das Inhaltsverzeichnis als einschlägig ausweist, alle anderen Textstellen (z.B. Sprachen Afrikas im Kapitel "Sprachen", das man sich vielleicht nicht unbedingt ansehen würde) gehen dabei durch die Finger.
Da's diese Texte teilweise auch in ocr-kodierter Fassung bzw. als .txt-Dateien gibt, hab' mir gedacht, man könnte das ja auch digital machen, und hab mich daher diese Woche mal versucht, mich in meine Python-Unterlagen zu vertiefen, die ich noch von einer Summerschool hatte. Meine Gedanken:
Im Lateinischen gibt's eine Vielzahl von Flexionsendungen, daher würden mir mit einer einfachen Suche nach dem folgenden Code alle Treffer zu "Africae, Africam,Africe" usw. durch die Finger gehen.
Code: Alles auswählen
with open ('De naturis rerum.txt', encoding='utf-8') as fp:
for line in fp:
if 'Africa' in line:
print(line.rstrip())
Ich hab' mir daher gedacht, dass ich das über Regexps angehen könnte - und ich hab' leider wirklich gar keine Ahnung und bis jetzt noch nicht genügend Zeit, mir die Fachliteratur genauer anzusehen (auch, weil ich sie z.T. nicht versteh', mea culpa). Aber das hier is mein vorläufiger Versuch:
Code: Alles auswählen
import re
with open ('De naturis rerum.txt', encoding='utf-8') as fp:
text = fp.read()
hit = re.findall('Afric.*', text)
print(hit)
Ich danke schon jetzt für Rückmeldungen und möchte um Entschuldigung bitten, wenn meine Frage zu banal sein sollte. Für mich ist sie's momentan nicht.
Liebe Grüße
Lo