PDA

Показать полную графическую версию : [решено] Удалить в текстовом файле по условию


AlexVong
20-11-2010, 18:16
Как удалить в текстовом файле слова заключенные в скобки, вместе со скобками? Например (иванов).

amel27
21-11-2010, 11:53
AFAIK штатными средствами CMD сделать возможно, но это уже из разряда извращений, так как придется делать посимвольный парсер, который будет работать о-о-очень медленно и с рядом ограничений (например, на длину строки)... чисто из спортивного интереса можно попробовать, но лучше воспользоваться сторонними CMD-утилитами, "заточенными" на работу с текстом (либо использовать WSH/PowerShell):

вариант на AWK (http://gnuwin32.sourceforge.net/packages/gawk.htm):
awk "{gsub(/\([^)]*\)/,\"\");print}" 1.txt >2.txt
вариант на SED (http://gnuwin32.sourceforge.net/packages/sed.htm):
sed "s/([^)]*)//g" 1.txt >2.txt

P.S. некоторые сборки SED могут некорректно обрабатывать переносы строк, заменяя CRLF -> LF




© OSzone.net 2001-2012