Что соответствует этому регулярному выражению?

Это компилирует и выполняет:

 var re = new Regex(@"what\ever");

Но я не могу найти ничего, что соответствует этому. whatever, what\ever а также what\\ever все не совпадают.

\e не является допустимой escape-последовательностью AFAIK, поэтому я не уверен, что предполагаемое поведение здесь...

5 ответов

Решение

Я думаю \e соответствует символу "Escape" (код ASCII 27). Следовательно, это должно соответствовать "what\x1bver"

\e - управляющий символ

Вы можете использовать бесплатный инструмент под названием The Regulator, который имеет встроенную функцию intellisense, которая помогает при таких вещах.

\e обычно равен \033,

Это escape-последовательность (0x1B).

Смотрите раздел непечатных символов здесь.

Я думаю, что вы должны использовать

var re = new Regex(@"[what\ever]");

соответствовать "что \ когда-либо"

Другие вопросы по тегам