Kennt sich jemand mit Unternehmensnamen Regex aus?

1 Antwort

Das komplett in RegEx (und in einem Zug) zu lösen ist schwierig.

Dein RegEx konnte ich noch etwas "eindampfen"

.*((G|gG)?mbH|[AKUue]G|e\.[VGK]|(Unternehmens)? *[Gg]ruppe| Aktiengesellschaft|Holding|GbR|Capital|GWU|Stadt|Sozialstiftung|Studentenwerk|GWG|Gemeinde|Gesellschaft|Staatsbedienstetenwohnungsbau|Landeshauptstadt|Anstalt|Stiftung|Ministerium|Bauamt|Freistaat|(Landrats|Stadtplanungs|Bezirks)?[Aa]mt|Universit.t|Staatsministerium|Stadtwerke|Landesamt|Bundesbank|Schulbau|Klinik(en|um)?).*

...das ändert jedoch nichts daran, das auch Email/Webadressen matchen. (das ließe sich wohl besser mit einer zusätzlichen (Ausschluß)prüfung des Matches auf '^E\s+.+@.+$' etc. regeln

ich zeigs mal in Powershell

demp.ps1

$EineAdresse = 'Immobiliengruppe GOC GmbH 
Hochstraße 48 
60313 Frankfurt am Main 
T +49 69 20976790 
E info@immobilien-gruppe.com 
W www.aqa-zollhafen-mainz.de '


($EineAdresse) -split '\r?\n|\r'|
    Where-Object {$_ -match '.*((G|gG)?mbH|[AKUue]G|e\.[VGK]|(Unternehmens)? *[Gg]ruppe| Aktiengesellschaft|Holding|GbR|Capital|GWU|Stadt|Sozialstiftung|Studentenwerk|GWG|Gemeinde|Gesellschaft|Staatsbedienstetenwohnungsbau|Landeshauptstadt|Anstalt|Stiftung|Ministerium|Bauamt|Freistaat|(Landrats|Stadtplanungs|Bezirks)?[Aa]mt|Universit.t|Staatsministerium|Stadtwerke|Landesamt|Bundesbank|Schulbau|Klinik(en|um)?).*'}|
    Where-Object {$_ -notMatch  '^E\s+.+@.+$' } #zweiter Pass: ...  nicht die Emailangabe
pause

Was Du Da vor hast ist alles andere als einfach zu lösen und ganz sicher nicht allein auf Basis von RegEx

Das Problem ist die sequenzielle Anordnung der Daten (und zu allem Übel auch noch die unterschiedliche Anordnung der Datenfelder ... einige erstrecken sich über mehrere Zeilen... manche Datenfelder sind sogar mehrfach vorhanden🤮) . solch ein "Kuddelmuddel" maschinell auseinander zu klamüsern ist extrem schwierig.

Ein weiters Manko, es sind Deutsche Adressen mit Umlauten... Eine ganz fiese Nummer mit RegEx: https://stackoverflow.com/questions/22017723/regex-for-umlaut ...AAABER: Wehe der Text ist nicht Unicode sondern ANSI.... dann gehen die \Unnnn-Sequenzen ins Leere

Vielleicht fällt mir noch irgendwann was schlaues ein um wenigstens einigermaßen System in sowas zu bringen...