\b
- это утверждение нулевой ширины : оно не потребляет никаких символов, оно просто утверждает, что определенное условие выполняется в данной позиции.Граница слова утверждает, что позиции предшествует либо символ слова, за которым не следует ни один, либо за ним следует символ слова, а не перед ним.(«Символ слова» - это буква, цифра или знак подчеркивания.) В вашей строке:
add +
... в начале есть граница слова, так как a
не предшествуетсимвол слова, и один после второго d
, потому что за ним не следует символ слова.\b
в вашем регулярном выражении (/\b\+/
) пытается найти соответствие между пробелом и +
, что не работает, поскольку ни один из них не является символом слова.