Смотрите трюки со словами

Просто чтобы вы знали, [] обозначает «классы символов». В регулярных выражениях Perl и, возможно, Ruby, \b — это «граница слова» вне класса символов и «backspace» внутри класса символов. В C символ ‘\b’ всегда обозначает backspace (точнее, ). Backspace в большинстве случаев не является полезным символом, а границы слова полезны, поэтому и происходит переопределение.

Чтобы использовать регулярное выражение для поиска «forbidden» или «forbidden», я бы, вероятно, использовал:

\b_?forbidden_?\b

(Я также знаю, как закодировать все свои буквы с помощью XX (X), чтобы избежать Unicode-трюков или проблем с регулярными выражениями.)

3 лайка