lastname.js 484 Bytes
angular.module('fr.lastname', [])

.factory('lastname', function () {
    return function lastname(name) {
        if (!name) {
            return '';
        }

        var nameParts = name.split(' ');

        if (/ van der /i.test(name)) {
            return nameParts.slice(-3).join(' ');
        }

        if (/ van | de | di | el | del /i.test(name)) {
            return nameParts.slice(-2).join(' ');
        }

        return name.split(' ').slice(-1).join(' ');
    };
});