Update German nouns

This commit is contained in:
niksedk 2022-07-16 19:53:45 +02:00
parent 6bcc3f3249
commit df89ab2bbc
2 changed files with 54 additions and 35 deletions

View File

@ -3,7 +3,6 @@ Abbitten
Abbruch
Abbrüche
Abend
Abend
Abendessen
Abendschicht
Abenteuer
@ -36,6 +35,7 @@ Abschaffung
Abschaffungen
Abschied
Abschiede
Abschiedsblume
Abschiedsszenen
Abschluss
Abschlüsse
@ -54,6 +54,7 @@ Absichten
Abstimmung
Abstimmungen
Absturz
Abszesskrankheit
Abteilung
Abteilungen
Abteilungsleiter
@ -90,6 +91,7 @@ Alkohol
Allgemeine
Alltag
Alltage
Almosen
Alpträumen
Altar
Altenheim
@ -97,6 +99,7 @@ Altenheime
Alter
Amateure
Ameise
Ameisenhaufen
Amerikaner
Amerikas
Ammoniak
@ -457,6 +460,7 @@ Bedrohung
Bedrohungen
Bedürfnis
Bedürfnisse
Beerdigung
Befehl
Befehle
Befugnis
@ -596,7 +600,6 @@ Beweismaterial
Beweisstück
Bewerbung
Bewerbungen
Bewerbungen
Bewohner
Bewusstsein
Beziehung
@ -650,6 +653,7 @@ Blutvergießen
Blähungen
Blätter
Blödsinn
Blüten
Bob
Boden
Bodenkontakt
@ -675,6 +679,7 @@ Briefe
Briefmarke
Briefmarken
Brise
Bronchiektasie
Brot
Bruchteil
Bruchteile
@ -690,7 +695,6 @@ Buch
Buchclubs
Buchstabe
Buchstaben
Buchstaben
Bucht
Buck
Bulle
@ -735,7 +739,6 @@ Campus
Champagner
Chance
Chancen
Chancen
Chaos
Charakter
Charakterisierung
@ -744,6 +747,7 @@ Charm
Charme
Chef
Chemikalien
Chemotherapie
China
Chip
Chunk
@ -817,7 +821,6 @@ Diener
Dienst
Dienste
Dienstmädchen
Dienstmädchen
Dienststelle
Dienststellen
Diner
@ -859,7 +862,6 @@ Duft
Duldung
Duldungen
Dummkopf
Dummkopf
Dunkelheit
Durchbruch
Durchbrüche
@ -889,6 +891,7 @@ Ehemann
Ehepaar
Ehre
Ehrlichkeit
Ehrwürdigen
Ei
Eiche
Eichhörnchen
@ -1030,6 +1033,7 @@ Entzug
Entzüge
Entzündung
Entzündungen
Epilepsie
Erbe
Erben
Erdbeben
@ -1056,7 +1060,6 @@ Erholungen
Erinnerungen
Erkenntnis
Erkenntnisse
Erkenntnisse
Erkennung
Erklärung
Erklärungen
@ -1116,7 +1119,6 @@ Faden
Fahne
Fahnen
Fahrer
Fahrer
Fahrplan
Fahrpläne
Fahrrad
@ -1149,6 +1151,7 @@ Fasanenpicker
Fasans
Faschisten
Fass
Fastenzeit
Faust
Favorit
Fazit
@ -1243,7 +1246,6 @@ Flügel
Flüsse
Flüssigkeit
Flüssigkeiten
Flüssigkeiten
Flüssigkeitsaustausch
Flüstern
Fokus
@ -1372,6 +1374,7 @@ Gedanke
Gedanken
Gedankenexperimenten
Gedenken
Gedenkfeier
Gedicht
Gedichte
Geduld
@ -1455,7 +1458,6 @@ Geschehnis
Geschehnisse
Geschenk
Geschichte
Geschichte
Geschichten
Geschichtslektion
Geschlagenen
@ -1546,6 +1548,7 @@ Gnaden
Gold
Golf
Gott
Gottheit
Gouverneur
Grab
Graben
@ -1656,14 +1659,12 @@ Hemd
Hemmschuh
Hemmschuhe
Herausforderung
Herausforderung
Herausforderungen
Herausgabe
Herbst
Herd
Herde
Herr
Herr
Herren
Herrlichkeit
Herrschaft
@ -1673,7 +1674,6 @@ Herzog
Heulsuse
Hexe
Hilfe
Hilfe
Himmel
Hinrichtung
Hinrichtungen
@ -1747,7 +1747,6 @@ Hütchen
Hüter
Hütte
Idee
Idee
Ideen
Identität
Idiot
@ -1803,7 +1802,8 @@ Jahrhundert
Jahrzehnt
Jahrzehnte
Jargon
Jazz
Jasminbaum
Jasminen
Jazz
Jeans
Jeep
@ -1861,7 +1861,6 @@ Keks
Keller
Kellner
Kellnerin
Kellnerin
Kenntnis
Kerl
Kern
@ -1963,8 +1962,6 @@ Konfrontation
Konjunktur
Konjunkturen
Konkurrenz
Konkurrenz
Konkurrenz
Konsequenz
Konsequenzen
Konstruktion
@ -2052,7 +2049,6 @@ Kunststoffe
Kupfer
Kuppel
Kurs
Kurs
Kurve
Kuss
Käfer
@ -2067,6 +2063,7 @@ Köpfe
Köpfen
Körbe
Körper
Körperhaar
Körperteile
Küche
Kühlschrank
@ -2122,10 +2119,10 @@ Lehrer
Leibesvisitation
Leiche
Leichen
Leichnam
Leichtigkeit
Leiden
Leidenschaft
Leidenschaft
Leihen
Leine
Leinen
@ -2150,6 +2147,7 @@ Lieben
Liebeskissen
Liebhaber
Liebling
Lieblingsplatz
Lied
Lieder
Lieferung
@ -2186,6 +2184,7 @@ Lust
Luxuseis
Luxusmarke
Luxusmarken
Lymphknoten
Lächeln
Länge
Längen
@ -2301,7 +2300,6 @@ Mist
Mitbewerber
Mitbewohner
Mitbewohnerin
Mitbewohnerin
Mitgefühl
Mitgefühle
Mitglied
@ -2334,6 +2332,7 @@ Monate
Mond
Mondlicht
Monster
Montag
Mord
Morde
Morgen
@ -2377,6 +2376,8 @@ Mäßigungen
Möbel
Möglichkeit
Mönch
Mönchsleben
Mönchstum
Mörder
Mühe
Mühen
@ -2408,7 +2409,6 @@ Nachrichtendienst
Nachrichtendienste
Nachstellung
Nacht
Nacht
Nachteil
Nachteile
Nachtlicht
@ -2425,6 +2425,7 @@ Nasenloch
Nation
Natur
Nebel
Nebenwirkungen
Neige
Neigen
Neigung
@ -2438,6 +2439,7 @@ Neubeginn
Neufassung
Neugier
Neuigkeiten
New York
Niederlage
Niederlagen
Nippel
@ -2453,7 +2455,6 @@ Notebook
Notenbank
Notenbanken
Notfall
Notfall
Notfälle
Nothilfe
Nothilfen
@ -2488,8 +2489,10 @@ Opa
Oper
Operation
Opfer
Opfergabe
Option
Orange
Ordination
Ordner
Ordnung
Ordnungen
@ -2517,6 +2520,7 @@ Paket
Pal
Palast
Palme
Palmen
Panik
Panne
Pannen
@ -2580,7 +2584,6 @@ Pirat
Piste
Pistole
Pizza
Pizza
Plakat
Plan
Planet
@ -2618,10 +2621,8 @@ Priester
Primaten
Prinz
Prinzessin
Prinzessin
Prinzip
Prinzipien
Prinzipien
Privatleben
Privatsphäre
Privileg
@ -2645,7 +2646,6 @@ Präsident
Präsidentenamt
Prüfung
Publikationen
Publikationen
Publikum
Puff
Puffer
@ -2779,6 +2779,7 @@ Riesendeal
Riesenwelle
Riesenwellen
Ring
Ringelflechte
Rippe
Risiko
Riss
@ -2881,6 +2882,7 @@ Schaffungen
Schal
Schale
Schalter
Schamhaare
Schande
Schanden
Scharfschütze
@ -2899,6 +2901,7 @@ Schaustellern
Scheibe
Scheidung
Scheinwerfer
Scheiterhaufen
Scheitern
Scheißbeziehungen
Scheiße
@ -3091,6 +3094,7 @@ Sir
Sirene
Situation
Sitzung
Sitzungszimmer
Skala
Skelett
Sklave
@ -3105,6 +3109,7 @@ Soda
Sofa
Sohn
Soldat
Soldaten
Sommer
Sommerpläne
Sonderfall
@ -3120,6 +3125,7 @@ Sonnenseite
Sonnenuntergang
Sorge
Sorgen
Sorgfalt
Soundsystem
Sowjets
Spalten
@ -3263,6 +3269,7 @@ Strecke
Streifen
Streit
Streite
Streitkräfte
Streitpunkt
Streitpunkte
Stress
@ -3362,7 +3369,6 @@ Taxigeld
Team
Teams
Techniker
Techniker
Technologie
Tee
Teenager
@ -3393,6 +3399,7 @@ Theater
Thema
Theorie
Theorien
Therapie
Thermometer
Ticket
Tiefe
@ -3569,7 +3576,6 @@ Urlaub
Ursache
Ursachen
Ursprung
Ursprung
Ursprünge
Urteil
Urteile
@ -3819,7 +3825,6 @@ Wachleute
Wachmann
Wachstum
Wachtmeister
Wachtmeister
Waffe
Waffenvorschläge
Wagen
@ -3940,7 +3945,6 @@ Wissenschaftlerin
Witwe
Witwen
Witz
Witz
Witze
Witzelei
Witzeleien
@ -3976,8 +3980,8 @@ Währung
Währungen
Wärme
Wäsche
Wäsche
Würfel
Würmer
Wüste
Zahl
Zahlen
@ -4167,5 +4171,4 @@ Zündstufe
Überzeugungen
Übung
Übungen
Übungsburger
Sitzungszimmer
Übungsburger

View File

@ -1,13 +1,16 @@
using Nikse.SubtitleEdit.Core.Common;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
namespace Nikse.SubtitleEdit.Core
{
public class GermanNouns
{
private readonly List<string> _germanNouns;
private readonly Dictionary<Regex, string> _regularExpressionList;
public GermanNouns()
{
@ -15,8 +18,14 @@ namespace Nikse.SubtitleEdit.Core
var inputFile = Path.Combine(Configuration.DictionariesDirectory, "deu_Nouns.txt");
if (File.Exists(inputFile))
{
_germanNouns = FileUtil.ReadAllLinesShared(inputFile, Encoding.UTF8);
_germanNouns = FileUtil.ReadAllLinesShared(inputFile, Encoding.UTF8).Select(p => p.Trim()).Where(p => p.Length > 1).ToList();
}
_regularExpressionList = new Dictionary<Regex, string>
{
{ new Regex(@"\bDas essen\b", RegexOptions.Compiled), "Das Essen" },
{ new Regex(@"\bdas essen\b", RegexOptions.Compiled), "das Essen" }
};
}
public string UppercaseNouns(string text)
@ -25,7 +34,14 @@ namespace Nikse.SubtitleEdit.Core
if (textNoTags != textNoTags.ToUpperInvariant() && !string.IsNullOrEmpty(text))
{
var st = new StrippableText(text);
st.FixCasing(_germanNouns, true, false, false, string.Empty);
foreach (var regex in _regularExpressionList.Keys)
{
st.StrippedText = regex.Replace(st.StrippedText, _regularExpressionList[regex]);
}
return st.MergedString;
}