我在另一个问题中发布了这个,但我认为它是分开的,所以我做了另一个。
replace 方法中有正则表达式。表达式都正确匹配并替换。这个replace(/\(he\/\she\)/g,"he")
和这个replace(/\(he\/\she\)/g,"she")
不要替换...我不知道为什么。这是代码。
function replaceGender(name, gender, comment) {
if(gender == "m")
{
comment = comment.replace(/\(name\)/g, name).replace(/\(He\/She\)/g,"He").replace(/\(His\/\Her\)/g,"His").replace(/\(his\/\her\)/g,"his").replace(/\(he\/\she\)/g,"he").replace(/\(him\/\her\)/g,"him");
}
else if(gender == "f")
{
comment = comment.replace(/\(name\)/g, name).replace(/\(He\/She\)/g,"She").replace(/\(His\/\Her\)/g,"Her").replace(/\(his\/\her\)/g,"her").replace(/\(he\/\she\)/g,"she").replace(/\(him\/\her\)/g,"her");
}
return comment;
};
这是一些输入“她阅读清晰且自信。她的写作技巧非常适合她的水平。我相信如果 Jenna 继续努力(他/她)将来会成为一个强大的英语演讲者。”
其他所有东西都替换好了..只是(他/她)