Как работает этот фрагмент (?!word\b)?
\b(?!word\b)\S{4,16}\b
Не понял, как работает это выражение в этом месте: (?!word\b)\S.
Ответы (1 шт):
Автор решения: dIm0n
→ Ссылка
Это negative lookahead. В данном случае означает, что не может быть отдельно стоящего слова word.
\b― граница слова ((^\w|\w$|\W\w|\w\W))(?!word\b)― отсутствие сочетанияword+ граница слова\S{4,16}\b― непробельные 4-16 символов + граница слова
Например:
word― не найдёт
word hello― не найдётword, но найдётhello
word123456789ABC― найдёт
word123456789ABCD― не найдёт