gluck59
@gluck59
Виртуальный глюк

Как подсунуть регулярку в командную строку ВИНДЫ?

Привет
Есть в дебрях винды команда FINDSTR .
И есть нужная мне регулярка (\"|\')[А-Яа-яЁ-ё\d\s]+(\"|\').

И все бы хорошо, но эта нехорошая женщина на попытку запустить findstr с этой регуляркой отвечает что "системе не удается найти указанный путь", хотя я никуда не предлагаю ей идти. Вообще никуда, даже на три буквы.

findstr (\"|\')[А-Яа-яЁ-ё\d\s]+(\"|\') *.php > 1.txt
Системе не удается найти указанный путь.

Причем это же создание известного производителя прекрасно переваривает другую регулярку и не ругается:

findstr [А-Яа-яЁ-ё] *.php > 1.txt

Что ж ей такой-растакой не нравится?
  • Вопрос задан
  • 251 просмотр
Пригласить эксперта
Ответы на вопрос 2
saboteur_kiev
@saboteur_kiev Куратор тега Windows
software engineer
Стандартов регэкспов несколько. и MS не особо жаждет стандартизировать свои регулярки с распространенным PCRE или еще чем-то. В том же Word у него вообще что-то свое.
Поэтому читайте документацию по findstr и пишите регулярку, которую он умеет парсить.

А еще лучше, поставьте себе git, с которым идет куча нормально портированный linux утилит, и используйте grep
Ответ написан
@res2001
Developer, ex-admin
Кроме выше описанного по регуляркам в findstr, символ | - служебный символ в cmd, его нельзя использовать не экранируя. Обычно в батниках его можно экранировать так: ^|
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы