Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] заменить ссылки из одного тхт на ссылки в другом тхт

Ответить
Настройки темы
Любой язык - [решено] заменить ссылки из одного тхт на ссылки в другом тхт

Старожил


Сообщения: 471
Благодарности: 2

Профиль | Отправить PM | Цитировать


Изменения
Автор: Alexander_88
Дата: 11-10-2015
Здравствуйте, подскажите пожалуйста как можно заменить ссылки в одном txt файле на ссылки в другом txt файле, критерий по которому скрипт должен найти какую ссылку на какую заменить - имя файла в конце ссылки, а также я указываю домен какой на какой заменить. Если идти сверху вниз, то ссылки идут по порядку и их количество совпадает, результат нужно вывести в третий тхт файл. В тхт файле (где нужно заменить ссылки) также есть другой текст..

пример:

в old.txt ссылки, которые нужно заменить. (домен выделен жирным, а также конец ссылки, который совпадает)

Код: Выделить весь код
jdshjfhsdkjf
[img]http://ist3-***terminator-001.jpg[/img]

File Name : terminator-001.mp4
Genres: Bodybuilding, Posing, Sex Toys
Format: mp4
Duration: 00:02:34
Filesize: 331 MB
Video: MPEG-4 ghjghj20, 29.000 fps, 3499 Kbps
Audio: AAfghfghfgannels, 64.2 Kbps
[IMG]http://ist3-****FileJoker-1.png[/IMG]
http://filejoker.net/n2b1xu907gzx/terminator-001.mp4

//==================
tyutyutyu
[img]http://ist3-***terminator-002.jpg[/img]

File Name : terminator-002.mp4
Genres: dfghfghfghfdgf
Format: mp4
Duration: 00:45:10
Filesize: 22 MB
Video: AVC, 1erter000 fps, 3500 Kbps
Audio: AAC LC, 44.1 rtytrynnels, 125 Kbps
[IMG]http://ist3-***FileJoker-1.png[/IMG]
http://filejoker.net/kbwejujrwejz/terminator-002.mp4

в new.txt ссылки, на которые нужно заменить (в столбик)

Код: Выделить весь код
http://www.datafile.com/d/T1RNgfhjuNUT0F9/terminator-001.mp4
http://www.datafile.com/d/T1RNgfhjuNUT0F9/terminator-002.mp4
Результат должен получиться:

Код: Выделить весь код
jdshjfhsdkjf
[img]http://ist3-***terminator-001.jpg[/img]

File Name : terminator-001.mp4
Genres: Bodybuilding, Posing, Sex Toys
Format: mp4
Duration: 00:02:34
Filesize: 331 MB
Video: MPEG-4 ghjghj20, 29.000 fps, 3499 Kbps
Audio: AAfghfghfgannels, 64.2 Kbps
[IMG]http://ist3-****FileJoker-1.png[/IMG]
http://www.datafile.com/d/T1RNgfhjuNUT0F9/terminator-001.mp4

//==================
tyutyutyu
[img]http://ist3-***terminator-002.jpg[/img]

File Name : terminator-002.mp4
Genres: dfghfghfghfdgf
Format: mp4
Duration: 00:45:10
Filesize: 22 MB
Video: AVC, 1erter000 fps, 3500 Kbps
Audio: AAC LC, 44.1 rtytrynnels, 125 Kbps
[IMG]http://ist3-***FileJoker-1.png[/IMG]
http://www.datafile.com/d/T1RNgfhjuNUT0F9/terminator-002.mp4

Отправлено: 11:38, 11-10-2015

 

Ветеран


Сообщения: 1658
Благодарности: 914

Профиль | Цитировать


Я правильно понял, что надо везде заменить

"filejoker.net/......"
на
"www.datafile.com/d/T1RNgfhjuNUT0F9"

или надо ориентироваться только по названию файла и брать соответствующий этому названию сетевой адрес из файла new.txt?
Код: Выделить весь код
$old  = get-content old.txt
$urls = [uri[]](get-content new.txt)

foreach ($url in $urls) {
    $old = $old -replace ".+$($url.segments[-1])",$url
  # $old = $old -replace ".+$($url.segments[$url.segments.count-1])",$url  # если старая версия
}

$old | set-content old1.txt
Это сообщение посчитали полезным следующие участники:

Отправлено: 12:22, 11-10-2015 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Старожил


Сообщения: 471
Благодарности: 2

Профиль | Отправить PM | Цитировать


Цитата Foreigner:
Я правильно понял, что надо везде заменить
"filejoker.net/......"
на
"www.datafile.com/d/T1RNgfhjuNUT0F9"
или надо ориентироваться только по названию файла и брать соответствующий этому названию сетевой адрес из файла new.txt? »
заменить везде.
заменить необходимо полностью ссылку... те ссылки, которые нужно заменить начинаются на
Код: Выделить весь код
http://filejoker.net/
а заканчиваются именем файла + расширение
те ссылки, на которые нужно менять начинаются на
Код: Выделить весь код
http://www.datafile.com/
и заканчиваются на имя файла + расширение.
если имя файла + расширение совпадает, то нужно проводить замену полностью всей ссылки целиком.

нужны именно ссылки, к сожалению после применения скрипта заменилась еще одна строка, которая выделена жирным.

Код: Выделить весь код
jdshjfhsdkjf
[img]http://ist3-***terminator-001.jpg[/img]

File Name : terminator-001.mp4
Genres: Bodybuilding, Posing, Sex Toys
Format: mp4
Duration: 00:02:34
Filesize: 331 MB
Video: MPEG-4 ghjghj20, 29.000 fps, 3499 Kbps
Audio: AAfghfghfgannels, 64.2 Kbps
[IMG]http://ist3-****FileJoker-1.png[/IMG]
http://www.datafile.com/d/T1RNgfhjuNUT0F9/terminator-001.mp4
я подозревал, что дакое может быть, еще тем более есть ссылки на картинки, поэтому думал, что лучше самому вводить в скрипт домены на которые начинаются ссылки тот что нужно заменить и тот на который нужно заменить.

Последний раз редактировалось Alexander_88, 11-10-2015 в 12:54.


Отправлено: 12:43, 11-10-2015 | #3


Ветеран


Сообщения: 1658
Благодарности: 914

Профиль | Цитировать


Цитата Alexander_88:
к сожалению после применения скрипта заменилась еще одна строка, которая выделена жирным. »
Добавьте в слеш:
Код: Выделить весь код
$old = $old -replace ".+/$($url.segments[-1])",$url
Это сообщение посчитали полезным следующие участники:

Отправлено: 13:19, 11-10-2015 | #4


Старожил


Сообщения: 471
Благодарности: 2

Профиль | Отправить PM | Цитировать


спасибо, работает

Отправлено: 16:46, 11-10-2015 | #5



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] заменить ссылки из одного тхт на ссылки в другом тхт

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Любой язык - [решено] Извлечь определенные строки по счету из одного тхт файла в другой Alexander_88 Скриптовые языки администрирования Windows 11 13-06-2015 12:48
Любой язык - [решено] Скопировать содержимое одного тхт файла столько раз, сколько строк в другом Alexander_88 Скриптовые языки администрирования Windows 4 11-06-2015 11:10
Любой язык - [решено] извлечение ссылок из одного тхт файла в другой Alexander_88 Скриптовые языки администрирования Windows 4 05-04-2015 15:39
Любой язык - [решено] из одного тхт файла добавить содержимое во все тхт файлы папки gangsterovich Скриптовые языки администрирования Windows 3 06-05-2011 04:29
VBA - Выгрузка в тхт из VBA Dron Программирование и базы данных 2 29-05-2003 11:42




 
Переход