在我的项目中,我试图突出显示一个文本(仅用户名),只要用@
. 我正在使用以下功能:
function replaceMessage(data, username) {
return data.replace("@" + username, "<strong>@" + username + "</strong>");
}
上面的这个函数是有效的,但是如果有两个有效的用户名为“Sam”和“Samuel”,那么应用函数后的结果会变成这样:
Sam
和Sam
uel (而不是Samuel
)。
如何解决这个问题?
我不太擅长使用正则表达式,我尝试了以下在 IE8 中不起作用的函数。
function replaceMessage(data, username) {
return data.replace(/\b + "@" + username + /g, "<strong>@" + username + "</strong>");
}