Что нового

Удалить из текстового файла всё, кроме куска текста.

Math

Новичок
Сообщения
85
Репутация
1
Нужно открыть текстовый файл, и удалить из него всё, кроме куска текста, который начинается, допустим, со слова "начало", и заканивается словом "конец".
Т.е.:
ненужный_текст
начало нужный_текст конец
ненужный_текст
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
Код:
$hRead = FileOpen('text.txt', 0)
$hWrite = FileOpen('newtext.txt', 2)
$sText = FileRead($hRead)
FileClose($hRead)
$sText = StringRegExpReplace($sText, '.*(?s)(начало.*конец)'.*, '\1')
FileWrite($hWrite, $sText)
FileClose($hWrite)
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
Kaster
У меня так не работает, так работает:
Код:
$sStart = 'начало'
$sEnd = 'конец'

$hRead = FileOpen('text.txt', 0)
$hWrite = FileOpen('newtext.txt', 2)
$sText = FileRead($hRead)
FileClose($hRead)
$sText = StringRegExpReplace($sText, '(?s).*(' & $sStart & '.*' & $sEnd & ').*', '\1')
FileWrite($hWrite, $sText)
FileClose($hWrite)
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
madmasles
поправил
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,671
Репутация
2,481
Kaster
madmasles
На самом деле открывать файл при полном чтений не обязательно, достаточно будет одного FileRead('text.txt').
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
CreatoR [?]
На самом деле открывать файл при полном чтений не обязательно
я это знаю, просто это хорошая практика, которая, к тому же, избавит от будущих вопросов, когда открывать файл по дескриптору просто необходимо. уверен это знает и madmasles, просто он подправил мой скрипт ;)
 
Верх