我正在尝试在我的表情符号功能中实现单词边界以进行聊天。但由于某种原因,我似乎无法让边界这个词起作用。我是正则表达式的新手。
所以当我这样做时:
var reg = /\b\Hi\b/gi;
var str = 'HiHiHi Hi HiHiHi Hi';
alert(str.replace(reg, ''));
发生这种情况:Jsfiddle
它实际上工作正常,并且确实删除了那些单独站立的 2 个 Hi。
但是当我将 reg 更改为转义的笑脸然后更改字符串时:
var reg = /\b\:\)\b/gi;
var str = 'HiHi:) :) HiHiHi :)';
alert(str.replace(reg, ''));
发生这种情况: Jsfiddle
它只是行不通。字符串保持不变。是不是单词边界不能用于符号?如果是这样,Facebook 如何在他们的聊天中做到这一点?