Что нового

Замена в тексте последнего значение на другое с двух txt

Deefra6

Новичок
Сообщения
5
Репутация
0
Добрый день. у меня такой вопрос например в 1.txt есть текст
f6537r=b8cno9=uc8xfc=1q8be3a=3235
как мне заменить последнее значение на другое которое находиться в файле 2.txt есть текст 4f65
на выходе получается например
f6537r=b8cno9=uc8xfc=1q8be3a=4f65
заранее благодарю за помощь
 

Andrey_A

Продвинутый
Сообщения
319
Репутация
68
Код:
$sFile1='C:\1.txt'
$sFile2='C:\2.txt'
$sText1=FileRead($sFile1)
$sText2=FileRead($sFile2)
$sLine=StringRegExpReplace($sText1,'(.*=)(.{4})\z','${1}'&$sText2)
MsgBox(4096,'Переменная $sLine',$sLine)
 

Andrey_A

Продвинутый
Сообщения
319
Репутация
68
нечего не происходит, замены нету
А что у вас в файле 2.txt?
У меня в этом файле прописано 4f65 - и замена происходит
Вы же не дали точное содержимое...
Или вам надо ещё эти дынные в файл прописать?
Код:
$hFile=FileOpen($sFile1,2)
FileWrite($hFile,$sLine)
FileClose($hFile)
 
Последнее редактирование:

Andrey_A

Продвинутый
Сообщения
319
Репутация
68
Так вы не ответили на вопрос: А что у вас в файле 2.txt?
Текст озвучьте, а так долго можно играть в испорченный телефон.
 
Автор
D

Deefra6

Новичок
Сообщения
5
Репутация
0
прописано 4f65
Сообщение автоматически объединено:
 
Последнее редактирование:

Andrey_A

Продвинутый
Сообщения
319
Репутация
68
может из за этого
У меня последняя 3.3.16.1, возможно , тогда можно проще
Код:
$sFile1='C:\1.txt'
$sFile2='C:\2.txt'
$sText1=FileRead($sFile1)
$sText2=FileRead($sFile2)
$sLine=StringTrimRight($sText1,4)&$sText2
MsgBox(4096,'Переменная $sLine',$sLine)
; $sLine=StringRegExpReplace($sText1,'(.*=)(.{4})\z','${1}'&$sText2)
; MsgBox(4096,'Переменная $sLine',$sLine)
; $hFile=FileOpen($sFile1,2)
; If $hFile=-1 Then Return
; FileWrite($hFile,$sLine)
; FileClose($hFile)


Код:
$sLine=StringTrimRight(FileRead('C:\1.txt'),4)&FileRead('C:\2.txt')
MsgBox(4096,'Переменная $sLine',$sLine)
 
Автор
D

Deefra6

Новичок
Сообщения
5
Репутация
0
спасибо большое заработало

в последнем скрипте значение 6 так как показывало 324f65
$sLine=StringTrimRight(FileRead('C:\1.txt'),6)&FileRead('C:\2.txt')
MsgBox(4096,'Переменная $sLine',$sLine)
 
Верх