Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Замена текста в документе (http://forum.oszone.net/showthread.php?t=318079)

null999 22-08-2016 23:57 2662309

Замена текста в документе
 
Подскажите, как поменять строку в файле, если там есть, допустим, определенное слово, пример:
словосочетание: "в лесу росли яблоки и груши"
поменять на "в лесу не растут яблоки и груши "
Можно ли как то задать что б замена происходила даже если в файле словосочетание будет "в лесу росли груши и яблоки"?

alpap 23-08-2016 01:07 2662324

Сами посмотрите на свое условие.
Вам надо поменять (в данном случае) "росли" на "не растут", а значит надо в тексте найти строку, содержащую "росли", по типу:
Код:

type "file.txt"|find /i "росли"
потом один из вариантов, разбивать строку на токены и вместо ненужного токена вставлять свой текст, надеюсь понятно что используется временный файл для этой процедуры. Но каждый случай, иногда очень похожий, зачастую разный, это я к тому что шаблон сделать (универсальный) не получиться.

Iska 23-08-2016 07:40 2662344

Подобные вещи нужно делать не на cmd/bat, а на WSH/PoSH, где ANSI/Unicode — нативная кодировка, есть почти полноценная поддержка регулярных выражений, и не надо извращаться при попытках замены/записи.

null999 23-08-2016 10:15 2662384

Цитата:

Цитата Iska
Подобные вещи нужно делать не на cmd/bat, а на WSH/PoSH, где ANSI/Unicode — нативная кодировка, есть почти полноценная поддержка регулярных выражений, и не надо извращаться при попытках замены/запис »

power shell мне не очень подходит, может тогда есть решение хоть на vbs? или для етого нужно новую тему создать?

Iska 23-08-2016 10:41 2662394

Цитата:

Цитата null999
power shell мне не очень подходит, »

Почему? Он не работает только на Windows 2000 и ниже.

null999 24-08-2016 00:42 2662624

Цитата:

Цитата Iska
Почему? Он не работает только на Windows 2000 и ниже. »

для него, если не ошибаюсь, нужно разрешение

Iska 24-08-2016 01:12 2662628

Однократное.


Время: 14:50.

Время: 14:50.
© OSzone.net 2001-