Что нового

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

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 319
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 473
Репутация
2 403
Kaster
madmasles
На самом деле открывать файл при полном чтений не обязательно, достаточно будет одного FileRead('text.txt').
 

kaster

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