Что нового

работа с текстом из одного текст док вставить в другой

otto2012

Новичок
Сообщения
16
Репутация
0
мы имеем 2 текс документа

в 1. написан тект пример

я люблю бегать
я люблю гулять
я люблю кушать
я люблю кота
я люблю собаку
я люблю свою ногу
я люблю ногу своей жены
я люблю ноги соседа
хочу мяса
хону супа
хочу коня
хочу авто
хочу по голове
хочу по ноге
хочу по пузе
хочу в небо
хочу в землю
итд

во втором текст документе сылки



h ttp://k. com/1
h ttp://k. com/2
h ttp://k. com/3
h ttp://k. com/4
h ttp://k. com/5
итд



нужно имень фунцию вставлять сылку несколько раз под разный комент т.е к примеру я пишу в Settings.ini что 1-ю сылку нужно повторить 5 раз. вторую сылку повторить 10 раз пример и.т.д коментов и сылок будет много

я люблю бегать h ttp://k. com/1
я люблю гулять h ttp://k. com/1
я люблю кушать h ttp://k. com/1
я люблю кота h ttp://k. com/1
я люблю собаку h ttp://k. com/1
я люблю свою ногу h ttp://k. com/2
я люблю ногу своей жены http://k. com/2
я люблю ноги соседа h ttp://k. com/2
хочу мяса h ttp://k. com/2
хону супа h ttp://k. com/2
хочу коня h ttp://k. com/2
хочу авто h ttp://k. com/2
хочу по голове h ttp://k. com/2
хочу по ноге h ttp://k. com/2
хочу по пузе h ttp://k. com/2

и т д

пишите в лс цену, за сколько вы напишите такой софт, или в теме
в ссылки поставил пробелы так как мне нельзя оставлять ссылки на внеш ресурс

заранее спасибо
 

ra4o

AutoIT Гуру
Сообщения
1,165
Репутация
246
Так ?
Код:
$sFile1=@ScriptDir&'\1.txt'
$sFile2=@ScriptDir&'\2.txt'
$sIniFile=@ScriptDir&'\data.ini'
$aFile1=FileReadToArray($sFile1)
$aFile2=FileReadToArray($sFile2)
$sAllText=''

$n=0
For $i=0 to Ubound($aFile2)-1
	$sText=''

	For $j=1 to IniRead($sIniFile,'повтор',$i+1,0)
		$sText=$aFile1[$n]&' '&$aFile2[$i]&@CR
		$n+=1
		If $n=UBound($aFile1) Then $n=0
		$sAllText&=$sText
	Next
Next
MsgBox(0,'',$sAllText)

И содержание ini файла:
номер строки во втором документе=количество повторов
Код:
[повтор]
1=5
2=10
3=4
4=8
5=2
 
Автор
O

otto2012

Новичок
Сообщения
16
Репутация
0
ra4o сказал(а):
Так ?
Код:
$sFile1=@ScriptDir&'\1.txt'
$sFile2=@ScriptDir&'\2.txt'
$sIniFile=@ScriptDir&'\data.ini'
$aFile1=FileReadToArray($sFile1)
$aFile2=FileReadToArray($sFile2)
$sAllText=''

$n=0
For $i=0 to Ubound($aFile2)-1
	$sText=''

	For $j=1 to IniRead($sIniFile,'повтор',$i+1,0)
		$sText=$aFile1[$n]&' '&$aFile2[$i]&@CR
		$n+=1
		If $n=UBound($aFile1) Then $n=0
		$sAllText&=$sText
	Next
Next
MsgBox(0,'',$sAllText)

И содержание ini файла:
номер строки во втором документе=количество повторов
Код:
[повтор]
1=5
2=10
3=4
4=8
5=2


да работает спасибо, осталось только дописать скрипт, что бы сохранял все это в отдельный документ к примеру 3.txt
я получаю такое на выходе
 

Вложения

  • 147.jpg
    147.jpg
    181.3 КБ · Просмотры: 15

ra4o

AutoIT Гуру
Сообщения
1,165
Репутация
246
Вот :
Код:
$sFile1=@ScriptDir&'\1.txt'
$sFile2=@ScriptDir&'\2.txt'
$sResultFile=@ScriptDir&'\3.txt'
$sIniFile=@ScriptDir&'\data.ini'
$aFile1=FileReadToArray($sFile1)
$aFile2=FileReadToArray($sFile2)
$sAllText=''

$n=0
For $i=0 to Ubound($aFile2)-1
    $sText=''

    For $j=1 to IniRead($sIniFile,'повтор',$i+1,0)
        $sText=$aFile1[$n]&' '&$aFile2[$i]&@CRLF
        $n+=1
        If $n=UBound($aFile1) Then $n=0
        $sAllText&=$sText
    Next
Next
;Если файл $sResultFile существует, то удаляем его, для того
;что-бы записать со свежими данными
If FileExists($sResultFile) Then FileDelete($sResultFile)
;Запись текста в файл
If FileWrite($sResultFile, $sAllText) Then MsgBox(48,'','Файл'&@CR&$sIniFile&@CR&'записан успешно !')
 
Верх