Что нового

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

Math

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

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
622
Код:
$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,320
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
Репутация
622
madmasles
поправил
 

CreatoR

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

kaster

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