AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Vor- und Nachnamen splitten

Vor- und Nachnamen splitten

Ein Thema von Mackhack · begonnen am 26. Apr 2012 · letzter Beitrag vom 29. Apr 2012
Antwort Antwort
Seite 2 von 3     12 3   
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.533 Beiträge
 
Delphi 11 Alexandria
 
#11

AW: Vor- und Nachnamen splitten

  Alt 27. Apr 2012, 20:35
Etwas in der Art hatte ich mir schon gedacht, mein Einwand sollte kein Vorwurf an Dich sein.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Mackhack
Mackhack

Registriert seit: 29. Nov 2003
Ort: San Diego, CA/USA
1.446 Beiträge
 
Delphi 2006 Architect
 
#12

AW: Vor- und Nachnamen splitten

  Alt 27. Apr 2012, 20:38
Etwas in der Art hatte ich mir schon gedacht, mein Einwand sollte kein Vorwurf an Dich sein.
Ok Danke für die Klärung.
Um etwas Neues zu schaffen muss man seine Ohren vor den Nein-sagern verschliessen um seinen Geist öffnen zu können.
(George Lukas)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.014 Beiträge
 
Delphi 12 Athens
 
#13

AW: Vor- und Nachnamen splitten

  Alt 27. Apr 2012, 22:42
Wenn du Glück hast, dann stellt das * zufällig die Trennung dar, welche du gern hättest.

Die komplett großgeschriebenen Namen könnte man zwar auch anpassen, also alle Wörter mit großgeschriebenem Anfangsbuchstaben und sonst klein.
Was aber natürlich Probleme gibt, wenn eigentlich Anfangsbuchstaben klein sind und nachfolgende Buchstaben doch groß sein sollten.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#14

AW: Vor- und Nachnamen splitten

  Alt 27. Apr 2012, 22:47
Wenn die Daten so von dem Kunden kamen, stellt sich die Frage was der Vertrag aussagt. Wer ist für solche Aufsplittung zuständig?
  Mit Zitat antworten Zitat
Benutzerbild von Mackhack
Mackhack

Registriert seit: 29. Nov 2003
Ort: San Diego, CA/USA
1.446 Beiträge
 
Delphi 2006 Architect
 
#15

AW: Vor- und Nachnamen splitten

  Alt 27. Apr 2012, 22:51
Wenn du Glück hast, dann stellt das * zufällig die Trennung dar, welche du gern hättest.

Die komplett großgeschriebenen Namen könnte man zwar auch anpassen, also alle Wörter mit großgeschriebenem Anfangsbuchstaben und sonst klein.
Was aber natürlich Probleme gibt, wenn eigentlich Anfangsbuchstaben klein sind und nachfolgende Buchstaben doch groß sein sollten.
GROSS/Kleinschreibung spielt in diesem Falle keine Rolle. Der * ist leider nicht in jedem Datensatz vorhanden. Nur in manchen. Noch nicht mal der Kunde weiß warum.

Jetzt habe ich aber noch ein Problem: Ein Feld sieht noch so aus "CITY,ST ZIP". Ich habe es geschafft CITY und ZIP zu extrahieren, aber ich scheitere an der ST(ate). Das Pattern sieht so aus:
Code:
LAS VEGAS NV 89103-5041
Zwischen Stadt und Staat sind immer 2 Leerzeichen, nach dem Staate und vor dem Zip immer ein Leerzeichen. Weiß jemand wie man das ggf. mit LTRIM/RTRIM herausbekommt?

Vielen Dank.
Um etwas Neues zu schaffen muss man seine Ohren vor den Nein-sagern verschliessen um seinen Geist öffnen zu können.
(George Lukas)
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#16

AW: Vor- und Nachnamen splitten

  Alt 28. Apr 2012, 01:02
Code:
Create FUNCTION [dbo].[F_SplitCity](@All Varchar(50))
--201204 by Thomas Wassermann
RETURNS
@tab TABLE
(
City Varchar(50),
State Varchar(50),
ZIP Varchar(50)
)
AS
BEGIN
   Declare @tmp varchar(50)
   Declare @zip varchar(50)
   Declare @State varchar(50)
   
    Set @tmp =RTRIM(LTRIM(REVERSE(@ALL)))
    SET @zip=RTRIM(SUBSTRING(@tmp,1,CharIndex(' ',@tmp)))
    SET @tmp=LTRIM(RTRIM(REPLACE(@tmp,@zip,'')))
    SET @zip=REVERSE(@Zip)
    Set @State=RTRIM(SUBSTRING(@tmp,1,CharIndex(' ',@tmp)))
    SET @tmp=REPLACE(@tmp,@State,'') -- hier gegf. etwas anderes einbauen als Replace
    SET @State=REVERSE(@State)
    Insert into @tab Select Reverse(@tmp),@State,@Zip
   RETURN
END
Verwendung
Code:
Select *
from CST Cross Apply [dbo].[F_SplitCity](CST.[ALL])
bei CST = bestehende Adresstabelle und ALL = das Sumpffeld mit City-State-Zip
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Benutzerbild von Mackhack
Mackhack

Registriert seit: 29. Nov 2003
Ort: San Diego, CA/USA
1.446 Beiträge
 
Delphi 2006 Architect
 
#17

AW: Vor- und Nachnamen splitten

  Alt 28. Apr 2012, 01:15
Vielen Dank Bummi.

Es wird immer besser. Gleicher Kunde, anderer Standort gibt uns dieses hier:

Code:
WO #,ACCOUNT #,NAME,Phone,ADDRESS 1,ADDRESS 2,ADDRESS 3,SCHEDULE DATE,TIME,Basic,Digital,PREF_PREM,VALUE
12345678,12345678,Max Mueller,7573183267,631 CONNECTICUT AVE,"NORFOLK, VA 23508-2707",,2012/04/27,A1 ALLDAY,1,0,0,0
60818580,11590213,Mueller Jonny,3369068368,APT 204,7712 ENFIELD AVE,"NORFOLK, VA 23505-1950",2012/04/27,K2 8-10C,0,0,0,0
60817325,13009505,Schuster L Ulli,7579655583,804 S CLUB HOUSE RD,"VIRGINIA BEACH, VA 23452-6402",,2012/04/30,J1 1 - 3,1,0,0,0
Alle Zahlen und Namen sind natürlich frei erfunden.

Wie man sehen kann ist im Address1 mal die Straße mit Hausnummer (korrekt), mal die Apartment Unit was wenn eine vorhanden ist in Address2 stehen sollte, wenn nicht sollte da die Stadt stehen, danach Staat und anschließend der Zip Code. Es ist alles durcheinander. Oder City, State und Zip sind wieder in einer Spalte.

Namen hat jetzt auch wie in der anderen Datei Vor- und Nachname nicht getrennt und ab und zu haben die Leute auch einen Mittel-Initial-Buchstaben.

Vertrag ist gut, wer diese Dateien so nicht haben möchte macht mit diesen Firmen gar kein Geschäft. Es interessiert die leider nicht.
Um etwas Neues zu schaffen muss man seine Ohren vor den Nein-sagern verschliessen um seinen Geist öffnen zu können.
(George Lukas)
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#18

AW: Vor- und Nachnamen splitten

  Alt 28. Apr 2012, 07:27
Tja, klarer Fall von ShiSho, lass vom Kunden definieren wie die Regeln aussehen sollen, mit dem was rauskommt wird er leben, bzw. im Laufe der Zeit manuell korrigieren müssen.
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 16. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#19

AW: Vor- und Nachnamen splitten

  Alt 28. Apr 2012, 08:39
Du solltest deinen Kunden darauf hinweisen, dass es jede Menge Firmen gibt, deren Hauptprodukt Software für Adresskorrektur ist.
So eine Software kann ohne Weiteres über 50000 Euro kosten, weil das autom. Korrigieren und Normieren von Adressen so kompliziert sein kann.
Wenn du dich darauf einlässt, die Namen zu splitten, dann musst du damit rechnen immer wieder nachbessern zu müssen.
Mach deinem Kunden irgendwie klar, dass er sich nicht eine Leistung durch die Hintertür erschleichen kann, die bei anderen Firmen tausende Euro kosten. (natürlich nicht das Wort "erschleichen" verwenden)
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#20

AW: Vor- und Nachnamen splitten

  Alt 28. Apr 2012, 09:30
Vollkommen richtig. Lasst euch nach Aufwand bezahlen.

Tipp: Straßen-, Städte-, ZIP-Verzeichnise besorgen und einen heuristisch-automatischen Abgleich vornehmen. Ihr versucht also, Straße, ZIP, State, Stadt zu extrahieren, prüft, ob es passt und schmeißt den Müll in eine Korrekturmappe.

Die wird dann manuell korrigiert.

Erkennt man Gemeinsamkeiten im Müll (fehlende Straße in der Straßenliste?), kann man die Heuristik schrittweise verbessern.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:52 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz