Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.59/22: Рейтинг темы: голосов - 22, средняя оценка - 4.59
 Аватар для Sayjls
0 / 0 / 0
Регистрация: 19.05.2019
Сообщений: 23

Выборка текста после знака с учетом Регистра

06.06.2019, 04:10. Показов 4683. Ответов 44

Студворк — интернет-сервис помощи студентам
У меня есть Ексель база которую я перевёл в txt формат
Более 15 тыс строк в столбик текста мне нужно выбрать и рассортировать текст по критериям
Нужно что бы сохранялись в отдельный txt только те строки в которых после этого знака } начинается начинается Слово с большой буквы , в другой txt где будут строки с маленькой буквой , В общем дела с Реггистром сам я пытался сделать но так ничего не вышло


Вход
Павел Мурин}Каплунова5
Геннадий Петренко}озеро букваторка
Ильич Рамов}Стильзавод6
Максим Мироненко}отсутсвует
Данил Строган}водоканал
На выходе должны получить
1 txt со строками
Павел Мурин}Каплунова5
Ильич Рамов}Сстильзавод6
2 txt со строками
Геннадий Петренко}озеро букваторка
Максим Мироненко}отсутсвует
Данил Строган}водоканал

Мой код который я пробовал писать но ничего не вышло
Windows Batch file
1
2
3
4
5
6
@echo off
setlocal enableextensions enabledelayedexpansion
set /P base=“ засунуть txt ‘’ .->.FINDSTR /L /I}/I%base% > 1.txt
FINDSTR /L  “ } /i%base% > 2.txt
pause
Помогите дописать до рабочего состояния

Добавлено через 3 часа 35 минут

Windows Batch file
1
2
3
4
5
6
@echo off
setlocal enableextensions enabledelayedexpansion
set /P base=" База txt " .->. "
FINDSTR /L /I " }/I " %base% > 1.txt
FINDSTR /L  “" } /i " %base% > 2.txt
pause
Поправил
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.06.2019, 04:10
Ответы с готовыми решениями:

Выборка данных из регистра сведений и регистра остатков
Нужно написать отчет по з.п, продавцы получают з.п в зависимости от того сколько они продали, т.е процент надбавки зависит от суммы...

Document.write отображение текста после специального знака
Оператор document.write отображает текст верно если между символами a < b < с стоят пробелы. В случае если пробелы убрать, вывод текста...

Условие с учетом регистра
Подскажите, как в данном коде, прописать условие - с учетом регистра. if CheckBox1.Checked and (Pos(AnsiLowerCase(Memo1.Lines),...

44
6981 / 2873 / 1104
Регистрация: 06.06.2017
Сообщений: 9,752
06.06.2019, 04:12
Windows Batch file
1
2
3
@chcp 1251>nul
@findstr /v "}[а-я]" База.txt>1.txt
@findstr "}[а-я]" База.txt>2.txt
1
 Аватар для Sayjls
0 / 0 / 0
Регистрация: 19.05.2019
Сообщений: 23
06.06.2019, 04:32  [ТС]
Bash
1
2
3
4
5
6
@echo off
setlocal enableextensions enabledelayedexpansion
set /P base="Kuday Bazu. ->  "
@findstr /v ":[a-z]" %base% > 1.txt
@findstr ":[a-z]" %base% > 2.txt
pause
Не получилось (

Добавлено через 2 минуты
У меня Текст на Англ Языке , @chcp 1251>nul Это лишнее я Просто Пример на русском привел.

Добавлено через 13 минут
Bash
1
2
3
4
5
6
@echo off
setlocal enableextensions enabledelayedexpansion
set /P base="File txt  ->  "
@findstr /v "}[a-z]" %base% > 1.txt
@findstr "}[a-z]" %base% > 2.txt
pause
Не хочет
0
Любознательный
 Аватар для YuS_2
7405 / 2255 / 360
Регистрация: 10.03.2016
Сообщений: 5,216
06.06.2019, 05:05
Цитата Сообщение от FlasherX Посмотреть сообщение
findstr /v "}[а-я]"
Во-первых, диапазоны в findstr работают криво и регистронезависимо, отсутствие ключа /i не поможет.
Во-вторых, будут выведены все строки, где нет вообще сочетания "}[а-я]", а по условию требовалось совсем не это.
Чтобы оно заработало, придется заняться перечислением обоих алфавитов целиком, причем отдельно прописные, отдельно строчные...

Но лучше воспользоваться более вменяемыми инструментами:
powershell
PowerShell
1
2
3
4
5
6
7
8
gc test.txt -enc utf8|%{
    if ($_ -match '(?-i)}[A-ZА-ЯЁ]'){
        $_|out-file 1.txt -enc utf8 -app
    } elseif ($_ -match '(?-i)}[a-zа-яё]'){
        $_|out-file 2.txt -enc utf8 -app
    }
}
}
0
 Аватар для Sayjls
0 / 0 / 0
Регистрация: 19.05.2019
Сообщений: 23
06.06.2019, 05:07  [ТС]
У меня на Английской все языке , я приводил пример просто как на русском
0
Любознательный
 Аватар для YuS_2
7405 / 2255 / 360
Регистрация: 10.03.2016
Сообщений: 5,216
06.06.2019, 05:15
Цитата Сообщение от Sayjls Посмотреть сообщение
меня на Английской все языке
это неважно, работать будет для любого из двух языков...
Кстати, там у меня ошибка (печатал прямо на форум, без проверки ), 8 строка в коде лишняя...
т.е. должно быть так:
PowerShell
1
2
3
4
5
6
7
gc test.txt -enc utf8|%{
    if ($_ -match '(?-i)}[A-ZА-ЯЁ]'){
        $_|out-file 1.txt -enc utf8 -app
    } elseif ($_ -match '(?-i)}[a-zа-яё]'){
        $_|out-file 2.txt -enc utf8 -app
    }
}
ну и ещё можно так:
PowerShell
1
2
(sls test.txt -patt '(?-i)}[A-ZА-ЯЁ]' -enc utf8).line|sc 1.txt -enc utf8
(sls test.txt -patt '(?-i)}[a-zа-яё]' -enc utf8).line|sc 2.txt -enc utf8
1
6981 / 2873 / 1104
Регистрация: 06.06.2017
Сообщений: 9,752
06.06.2019, 05:16
Цитата Сообщение от YuS_2 Посмотреть сообщение
Во-первых
Во-вторых
Во-первых, был приведён пример на вход, и, как следствие, под него и приводилось решение. И в его отношении вот именно что работает без /i.
Во-вторых, да, будут выведены все строки, не соотв. выражению в отношении опять же приведённого примера. А, значит, вполне себе ТО. Что следует далее — это уже изменённые условия по сути, под которые будут работать иные правила. Андестенд?
0
Любознательный
 Аватар для YuS_2
7405 / 2255 / 360
Регистрация: 10.03.2016
Сообщений: 5,216
06.06.2019, 05:25
Цитата Сообщение от FlasherX Посмотреть сообщение
Во-первых
Во-вторых
Во-первых, вменяемый человек признал бы свою ошибку и просто поправился бы, а не стал бы выкручиваться относительно примера, т.к. есть конкретное условие и упоминание о 15 тыс. строк, а не только о том самом примере.
Во-вторых, сначала проверьте, что "регэкспы" из findstr с кривыми диапазонами работают регистронезависимо, абсолютно не принимая во внимание отсутствие ключа /i, а потом уже пишите на форум...
0
6981 / 2873 / 1104
Регистрация: 06.06.2017
Сообщений: 9,752
06.06.2019, 05:31
Sayjls, собственно:
Windows Batch file
1
2
3
@set /p base="Base name: "
@findstr ":[abcdefghijklmnopqrstuvwxyz]" "%base%">1.txt
@findstr ":[ABCDEFGHIJKLMNOPQRSTUVWXYZ]" "%base%">2.txt
Добавлено через 4 минуты

Не по теме:

YuS_2, слушай, "вменяемый", я тебя убедительно прошу, не пиши мне больше. Мне твою софистическую отсебятину читать нет никакого желания. И не прикидывайся, что со мной на вы, ты первый сам давно на ты перешёл.

1
Любознательный
 Аватар для YuS_2
7405 / 2255 / 360
Регистрация: 10.03.2016
Сообщений: 5,216
06.06.2019, 05:35
Цитата Сообщение от FlasherX Посмотреть сообщение
@findstr ":[abcdefghijklmnopqrstuvwxyz]" "%base%">1.txt
во-первых, поспешишь - людей насмешишь, не двоеточие, а "}"
во-вторых, куда делись диапазоны, о которых упоминалось? они же:
Цитата Сообщение от FlasherX Посмотреть сообщение
И в его отношении вот именно что работает без /i.
- точно работают?

Добавлено через 2 минуты
Цитата Сообщение от FlasherX Посмотреть сообщение
убедительно прошу, не пиши мне больше.
ну, так не я начал комментировать чужие коды, это ты страдаешь умничанием...

Цитата Сообщение от FlasherX Посмотреть сообщение
софистическую отсебятину
тут, как раз факты, которые я приводил, они легко проверяются.
0
06.06.2019, 05:47

Не по теме:

Цитата Сообщение от YuS_2 Посмотреть сообщение
во-первых
Что тебе в фразе "не пиши мне больше" неясно?
В 3 посте человек приводит код с двоеточием. Советую разуть глазки, тогда и возникнет повод посмеяться.
Всё проверено, и в твоих глумливых комментариях никто здесь не нуждается.
Цитата Сообщение от YuS_2 Посмотреть сообщение
ну, так не я начал комментировать чужие коды, это ты страдаешь умничанием.
Мои коды начал неуместно троллить и продолжаешь это делать именно ты. Не держи людей за баранов...

0
06.06.2019, 05:53

Не по теме:

Цитата Сообщение от FlasherX Посмотреть сообщение
Что тебе в фразе "не пиши мне больше" неясно?
Не путай общественное с личным. Здесь форум, а не личная почта, так что, не тебе лично, я пишу. Андестенд?

Цитата Сообщение от FlasherX Посмотреть сообщение
В 3 посте человек приводит код с двоеточием.
в том же, третьем сообщении, есть поправка, через 13 минут. Очки требуются? Так что, не спеши, ведь есть условия, которые описаны в первом сообщении, их вполне достаточно.

Цитата Сообщение от FlasherX Посмотреть сообщение
Мои коды начал комментировать и продолжаешь это делать именно ты. Не держи людей за баранов...
Никто никого ни за кого не держит, и вообще, при чем тут люди? А про комментарии... речь ведь не только об этом топике, ты ведь это прекрасно понимаешь. Или будешь симулировать амнезию?

0
 Аватар для Sayjls
0 / 0 / 0
Регистрация: 19.05.2019
Сообщений: 23
06.06.2019, 06:02  [ТС]
@findstr ":[1234567890]" "%base%">1.txt
Допустим сейчас после : Выбирает набор где есть только цифры , но после цифр идут и буквы , как сделать что были только цифры без букв.

Добавлено через 31 секунду
Bash
1
@findstr ":[1234567890]" "%base%">1.txt
0
Любознательный
 Аватар для YuS_2
7405 / 2255 / 360
Регистрация: 10.03.2016
Сообщений: 5,216
06.06.2019, 06:05
Цитата Сообщение от Sayjls Посмотреть сообщение
как сделать что были только цифры без букв.
Windows Batch file
1
findstr ":[0-9][0-9]* " "test.txt" >1.txt
1
 Аватар для Sayjls
0 / 0 / 0
Регистрация: 19.05.2019
Сообщений: 23
06.06.2019, 06:08  [ТС]
Bash
1
@findstr ":[0-9][0-9]* " "%base%" >1.txt
Не работает ибо Одно и тоже что
Bash
1
@findstr ":[1234567890]" "%base%">1.txt
0
06.06.2019, 06:12

Не по теме:

Цитата Сообщение от YuS_2 Посмотреть сообщение
Здесь форум, а не личная почта, так что, не тебе лично, я пишу. Андестенд?
Нет, не андестенд. Я твои коды не комментирую принципиально. Если бы у тебя хватало здравомыслия не ввязываться в перепалки, ты бы поступал аналогично, но провокаторские замашки, видимо, выше этого...
Цитата Сообщение от YuS_2 Посмотреть сообщение
в том же, третьем сообщении, есть поправка, через 13 минут. Очки требуются? Так что, не спеши, ведь есть условия, которые описаны в первом сообщении, их вполне достаточно.
Это поправка под мой код с фигурной скобкой, а не под реальные нужны. Человек прямым текстом написал, что это был пример, в котором, как следствие, фигурная скобка и кириллица лишь вариант для тестирования. Для понимание сего факта ещё и очки требуются? Спешу с выводами здесь не я.
Цитата Сообщение от YuS_2 Посмотреть сообщение
Никто никого ни за кого не держит, и вообще, при чем тут люди? А про комментарии... речь ведь не только об этом топике, ты ведь это прекрасно понимаешь. Или будешь симулировать амнезию?
Мы все читающие тут люди, поэтому при чём. Я как раз и пишу в контексте истории, а не текущего топика. Тут не проблема амнезии, тут проблема перекладывания с больной головы. Я могу накидать пруф-ссылок, но тут (как, впрочем, и в ЛС по известным причинам) это совсем ни к чему. Я нужные выводы давно сделал...

0
 Аватар для Sayjls
0 / 0 / 0
Регистрация: 19.05.2019
Сообщений: 23
06.06.2019, 06:16  [ТС]
Ребят да у вас у обоих сабли длинные.
0
6981 / 2873 / 1104
Регистрация: 06.06.2017
Сообщений: 9,752
06.06.2019, 06:23
Лучший ответ Сообщение было отмечено Sayjls как решение

Решение

Sayjls, на выбор:
Windows Batch file
1
@findstr /E ":[0-9]*" Base.txt>1.txt
Windows Batch file
1
@findstr ":[0-9]*$" Base.txt>1.txt
1
 Аватар для Sayjls
0 / 0 / 0
Регистрация: 19.05.2019
Сообщений: 23
06.06.2019, 06:54  [ТС]
А если мне нужно с начало цифры + буквы но что бы было 938opew
это выражение выбирает так но оно ещё добавляет просто цифры а они не нужны

Bash
1
@findstr ":[1234567890]" "%base%">1.txt
Надо что бы получилось что то типо такова
Bash
1
@findstr ":[1234567890]+[abcdefghijklmnopqrstuvwxyz]+[ABCDEFGHIJKLMNOPQRSTUVWXYZ]" "%base%">1.txt
0
6981 / 2873 / 1104
Регистрация: 06.06.2017
Сообщений: 9,752
06.06.2019, 07:04
Windows Batch file
1
@findstr ":[0-9][0-9]*[a-z][a-z]*$" "%base%">1.txt
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.06.2019, 07:04
Помогаю со студенческими работами здесь

Сортировка с учетом регистра
Добрый день подскажите пожалуйста как произвести сортировку таблицы с учетом регистра?

Вывод логина с учетом регистра
Ребятки, вообщем тут назрел вопрос, хочу сделать так, чтобы при Авторизации не просто проверялось: существует ли пользователь или нет, а...

Сравнение строк с учетом регистра
Подскажите, как в VBA сделать с учетом регистра? В коде у меня идет сравнение 2 ух переменных

Изменить текст с учетом наличия знака '+'
Дан текст. Если в тексте нет знака +, то оставить текст без изменений, иначе каждую из цифр, что предшествует первому вхождению знака +,...

Замена символов в строке с учетом регистра
В программе слоги с большой буквы ("Ма") при замене на цифры (11) меняются на те же слоги, но с маленькой буквы using System; using...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru