View Source ExToolkit.Naming (ExToolkit v0.9.7)
This module encapsulates common tasks related to processing personal names in a standardized format. This module treats names as case-insensitive and returns results in a formatted, readable way.
Summary
Functions
Capitalizes the first letter of each word in a name.
Extracts and capitalizes the first and last names from a given name.
Extracts the initials from a given name.
Shortens the first name to its initial, while preserving the rest of the name.
Functions
Capitalizes the first letter of each word in a name.
Parameters
name
: A string representing a full name, ornil
.
Examples
iex> Naming.capitalize(nil)
""
iex> Naming.capitalize("")
""
iex> Naming.capitalize("john doe")
"John Doe"
iex> Naming.capitalize("JOHN DOE")
"John Doe"
iex> Naming.capitalize("john nommensen duchac")
"John Nommensen Duchac"
Extracts and capitalizes the first and last names from a given name.
Parameters
name
: A string representing a full name, ornil
.
Examples
iex> Naming.extract_first_last_name(nil)
""
iex> Naming.extract_first_last_name("")
""
iex> Naming.extract_first_last_name("john")
"John"
iex> Naming.extract_first_last_name("john doe smith")
"John Smith"
Extracts the initials from a given name.
This function takes a name (a string of one or more words), and extracts the first letter of the first name and the family name.
Parameters
name
: A string representing a full name, ornil
.
Examples
iex> Naming.extract_initials(nil)
""
iex> Naming.extract_initials("")
""
iex> Naming.extract_initials("John")
"J"
iex> Naming.extract_initials("John Doe")
"JD"
iex> Naming.extract_initials("John Nommensen Duchac")
"JD"
Shortens the first name to its initial, while preserving the rest of the name.
This function takes a name (a string of one or more words), and reduces the first name to its initial. The rest of the name is preserved. The initial is followed by a period and a space, and then the rest of the name.
Parameters
name
: A string representing a full name, ornil
.
Examples
iex> Naming.shorten_firstname(nil)
""
iex> Naming.shorten_firstname("")
""
iex> Naming.shorten_firstname("John")
"J."
iex> Naming.shorten_firstname("john")
"J."
iex> Naming.shorten_firstname("John Doe")
"J. Doe"
iex> Naming.shorten_firstname("john doe")
"J. Doe"
iex> Naming.shorten_firstname("john doe jr")
"J. Doe Jr"