Regex Forfatternavne Normal

Konvertering af fulde navne til efternavn + initialer:

Fjern først alle punktummer efter evt. initialer
Erstat alle bindestreger med mellemrum
Fjern alle endestillede blanktegn, evt. flere gange

Med efternavn og eet fornavn:

xxx (\w)([\w\-]*+) ([\w\-]*+)$

erstat med:

xxx \3, \1

Med efternavn og to fornavne:

xxx (\w)([\w\-]*+) (\w)([\w\-]*+) ([\w\-]*+)$

erstat med

xxx \5, \1 \3

Med efternavn + tre fornavne:

(\w)([\w\-]*+) (\w)([\w\-]*+) (\w)([\w\-]*+) ([\w\-]*+)

erstat med:

\7, \1 \3 \5

Konvertering af Fornavn(e) Efternavn til Efternavn, Fornavne

Med 3 fornavne:

xxx ([\w\-]*+) ([\w\-]*+) ([\w\-]*+) ([\w\-]*+)$

erstat med:

xxx \4, \1 \2 \3

Med 2 fornavne:

xxx ([\w\-]*+) ([\w\-]*+) ([\w\-]*+)$

erstat med:

xxx \3, \1 \2

Adskille Efternavn + initialer fra resten af tekststreng

^([\w\ \-]*+), ([\w\.\-]*+), xxx

erstat med

\1, \2 \t xxx

Rette initialer med punktum til initialer kompakt eller med mellemrum

Find alle navne med een initial - her er navn adskilt fra resten af line med TAB:

, ([\w])\.\t

erstat med:

, \1\t

Derefter alle navne med to initialer:

, ([\w])\.([\w])\.\t

erstat med

, \1\2\t

-osv.
Sammensatte fornavne indeholder ofte bindestreger:

, (\w)\.\-(\w)\.\t

erstat med:

, \1\2\t


Testnavne

Jens Hansen
Jens Ole Hansen
Jens-Ole Hansen
Jens O Hansen
Jens O. Hansen
J.O. Hansen
JO Hansen

Peter Juul Nielsen
Peter Juul-Nielsen

Jens-Peter Juul Nielsen
Jens-Peter Juul-Nielsen
J-P Juul Nielsen
J-P Juul-Nielsen
J.-P. Juul Nielsen
J.-P. Juul-Nielsen

Anne Margrethe Kristine Hansen
Anne Margrethe Kristine Juul-Nielsen


Medmindre andet er angivet, er indholdet af denne side licenseret under Creative Commons Attribution-ShareAlike 3.0 License