gpt4 book ai didi

javascript - 人名的 JS 正则表达式

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

我正在寻找一个好的 JavaScript 正则表达式来将名称转换为正确的大小写。例如:

John SMITH = John Smith

Mary O'SMITH = Mary O'Smith

E.t MCHYPHEN-SMITH = E.T McHyphen-Smith

John Middlename SMITH = John Middlename SMITH

嗯,你明白了。

有人想出一个全面的解决方案吗?

最佳答案

是这样的吗?

function fix_name(name) {
var replacer = function (whole,prefix,word) {
ret = [];
if (prefix) {
ret.push(prefix.charAt(0).toUpperCase());
ret.push(prefix.substr(1).toLowerCase());
}
ret.push(word.charAt(0).toUpperCase());
ret.push(word.substr(1).toLowerCase());
return ret.join('');
}
var pattern = /\b(ma?c)?([a-z]+)/ig;
return name.replace(pattern, replacer);
}

关于javascript - 人名的 JS 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/250690/

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