Многократный поиск в Powershell и его замена на разрыв строки для текста - PullRequest
0 голосов
/ 23 июня 2019

Мне нужно пометить некоторые ошибки в текстовом файле с помощью «*».

В моем случае ошибка, которую я хочу отметить с помощью «*», это предложения, начинающиеся без заглавной буквы после переноса строки,Проблема в том, что я не смог найти способ включить разрыв строки в код с помощью `n или чего-либо еще.

Я сделал этот код powershell для запуска через файл .bat, но он рассматривает` n как строку,не разрыв строки.Кстати, я тоже могу использовать расширение .ps ofc.

powershell -Command "(gc test.txt) -replace '`na', '`n*a' -replace '`nb', '`n*b' | Out-File converted.txt"

Этот код должен идти от буквы "a" до "z", но я включил только буквы "a" и "b" в этом примеречтобы сделать его коротким и легким для чтения.

Что я хочу:

Пример ввода текста:

I want to fix this code.
but I'm not a coder.

Вывод должен быть:

I want to fix this code.
*but I'm not a coder.

Как видите, мне не нужно менять «но» на «но».Мне просто нужно пометить ошибки как "*".

Окончательный код должен заменить все некапитализированные буквы после разрыва строки на "* a" и "* b" и "* c" до последней буквы "*z ".

Более длинный пример, если я усложнил ситуацию:

Пример ввода:

Alpha
bravo
charlie
delta
echo
foxtrot
Golf
Hotel

Выводимый текст должен быть:

Alpha
*bravo
*charlie
*delta
*foxtrot
*echo
*foxtrot
Golf
Hotel

Заранее спасибо.Если вы хотите знать, зачем мне это нужно;Я работаю с субтитрами в производственной компании, и мне приходится проверять ошибки такого рода, которые появляются с огромными объемами каждый месяц.Я использую примитивные методы, такие как MS Word и оператор «^ p» для разрыва строки, но это действительно медленно и занимает у меня несколько часов.

1 Ответ

0 голосов
/ 26 июня 2019

Я нашел решение, но специальные символы теряются при кодировании. Мне нужно использовать 1254 турецкую кодировку. «-Кодирование windows-1254» или «-Кодирование cp1254» не работает. Как я могу это исправить? Я также попытался включить кодирование в получить контент.,

...