Skip to content

Instantly share code, notes, and snippets.

@TiagoGouvea
Last active January 19, 2018 14:00
Show Gist options
  • Save TiagoGouvea/04b475c0d6d976ca6468d2b0e0fa12ee to your computer and use it in GitHub Desktop.
Save TiagoGouvea/04b475c0d6d976ca6468d2b0e0fa12ee to your computer and use it in GitHub Desktop.
Return person first name or surName
/**
* Return the name and surname
* "Tiago Gouvêa de Oliveira" will return "Tiago Gouvea"
* @author TiagoGouvea
* @param name
* @returns String
*/
function nameSurname (name) {
name = name.trim();
if (!name) return '';
return firstName(name) + " " + surName(name);
}
/**
* Return the person firt name
* @author TiagoGouvea
* @returns String
* @param name
*/
function firstName (name) {
name = name.trim();
if (!name) return '';
let names = name.split(" ");
if (names.length === 1) { return name; } else { return names[0]; }
}
/**
* Return the person sur name
* @author TiagoGouvea
* @returns String
* @param name
*/
function surName (name) {
name = name.trim();
if (!name) return '';
let names = name.trim().split(" ");
let sur = '';
if (names.length >= 2) { sur = names[1]; }
if (names.length >= 3 && (['de', 'da', 'do', 'dos', 'das', 'del', 'dal', 'das']).indexOf(sur.toLowerCase()) > -1) { sur = names[1] + " " + names[2]; }
return sur;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment