2015-12-25 3 views
3

В туре по C++, на странице 83, Страуструп обеспечивает следующее регулярное выражение:Страуструп регулярного выражения е

R"((\ew+))" 

Нигде в книге \ е определены, и я не могу найти ничего об этом на интернет. Что означает \ e в регулярном выражении?

+2

У меня есть книга (вторая печать), и это 'R "((\ W +))"'. Я думаю, что это опечатка в вашей версии печати. – Alper

ответ

3

Это просто опечатка от Stroustrup. \e не имеет особого значения в регулярных выражениях и не имеет смысла в контексте.

Если бы вы были на самом деле скомпилировать пример кода на странице с помощью

R"((\ew+))" 

ничего не печатает бы на всех. Вероятно, он просто хотел использовать

R"((\w+))" 

группа захвата из 1 или более символов слова, соответствующая показанному выходу.

His original regex compiled

Compiled after removing the extra 'e'

+0

Я не вижу его в ошибках; возможно, стоит передать его ему. http://www.stroustrup.com/Tour.html –

+1

Действительно, похоже, что он исправлен между 1-й и 2-й печатью, так или иначе не превратив его в исправления. –

Смежные вопросы