Извлечение строк, состоящих из трех цифр, с помощью Windows findStr - PullRequest
0 голосов
/ 25 февраля 2020

когда я использую код в моем windows CMD, он не дает мне никакого вывода.

Я использую findstr -E ^[0-9]{3}$, и он не обеспечивает ожидаемый результат.

Это пример файла:

834
519
4874
5
89
45687
25
645

1 Ответ

0 голосов
/ 25 февраля 2020

Windows findStr не grep , вам нужно использовать

findstr /r /c:"^[0-9][0-9][0-9]$" test.txt

Опция /r делает findStr ищите шаблон "regex" и /c:"..." использует указанный текст в качестве буквенной строки поиска.

Поскольку функции регулярного выражения, поддерживаемые findStr, очень ограничены , вы не можете использовать {3}, вам нужно повторить [0-9] трижды. Тест:

C:\>findstr /r /c:"^[0-9][0-9][0-9]$" test.txt
834
519
645

Примечание : чтобы извлечь его 645, я должен был убедиться, что после этой последней строки в test.txt * есть завершающий разрыв строки 1026 * файл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...