Это в узле реплики nodejs.Класс символов [: punct:] работает некорректно
> let re = new RegExp('[:punct:]*lipsticks[:punct:]*', 'i');
/[:punct:]*lipsticks[:punct:]*/i
> 'LipsticksGuava'.replace(re, '')
'Guava'
> 'LipsticksNaked'.replace(re, '')
'aked'
Что случилось с N?
Пересмотрено мой эксперимент на основе обратной связи.
> re = new RegExp('[:punct:]*lipsticks[:punct:]*', 'i');
/[:punct:]*lipsticks[:punct:]*/i
> 'LipsticksNaked'.replace(re, '')
'aked'
> re = new RegExp('[[:punct:]]*lipsticks[[:punct:]]*', 'i');
/[[:punct:]]*lipsticks[[:punct:]]*/i
> 'LipsticksNaked'.replace(re, '')
'LipsticksNaked'
>
Использовать '[[: punct:]]' иначе '[: punct:]' работает как выражение в скобках. –
Классы символов POSIX не поддерживаются в Javascript. –