gpt4 book ai didi

javascript - 将姓名拆分为姓氏、名字、中间名首字母

转载 作者:行者123 更新时间:2023-11-28 11:17:14 26 4
gpt4 key购买 nike

我从包含用户名的文本框中输入了用户输入

输入可以如下所示:

var input = "Doe, John M";

但是,输入可能要复杂得多。像:

var input = "Doe Sr, John M"

“Doe,John M”

“Doe,John,M”

甚至“Doe Sr,John,M”

我想要做的是将姓氏(带有 sr 或 jr)与名字分开,然后是中间名首字母。

所以,这些字符串变成:

var input = "Doe#John#M""Doe Sr#John#M""Doe#John#M" >

我尝试过这个正则表达式,

input = input.replace(/\s*,\s*/g, '#');但这没有考虑最后一个中间名首字母。

最佳答案

我确信这可能可以通过 RegEx 来完成,但将字符串拆分为数组通常更快并且复杂度也更低(IMO)。试试这个功能:

var parseName = function(s) {
var last = s.split(',')[0];
var first = s.split(',')[1].split(' ')[1];
var mi = s[s.length-1];

return {
first: first,
mi: mi,
last: last
};
};

您只需传递名称即可调用它,例如parseName('Doe, John M') 并返回一个带有 firstmilast 的对象。我创建了一个jsbin您可以尝试测试您在问题中显示的名称格式。

关于javascript - 将姓名拆分为姓氏、名字、中间名首字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15816969/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com