module WolfCore::StringUtils
def split_name(full_name, name_range: nil, lastname_range: nil, if_one_word: nil)
def split_name(full_name, name_range: nil, lastname_range: nil, if_one_word: nil) if_one_word = {} unless if_one_word.is_a?(Hash) if_one_word.merge!(lastname: "-") if if_one_word[:lastname].nil? words = full_name.strip.split return { first_name: words[0], last_name: if_one_word[:lastname] } if words.length == 1 return { first_name: words[0], last_name: words[1] } if words.length == 2 name_range ||= 0..-2 lastname_range ||= -1..-1 name = words[name_range].join(" ") lastname = words[lastname_range].join(" ") { first_name: name, last_name: lastname } end