Автор Тема: Как поменять местами строки  (Прочитано 341 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн sasha1304 [?]

  • Новичок
  • *
  • Сообщений: 39
  • Репутация: 0
    • Награды
Как поменять местами строки
« Создано: Декабрь 28, 2018, 14:19:59 »
Здравствуйте. есть текстовой файл такого содержания:

acestream://59d6a51f5bdcdf2f8d861e0bf14856172a7fcbdc
#EXTINF:-1,24Техно

acestream://84f8cdc56625e9ea5ac73bc1a89df72872cf21a4
#EXTINF:-1,365 дней ТВ

acestream://9f0801c4c1ca4f41aaef98a30a1ea492966fc424
#EXTINF:-1,Animal Family HD

acestream://815daf9ba05ea77cf0fc67771359548eb08a41cd
#EXTINF:-1,Animal Planet HD

acestream://f9d10e6fa938417babd0311b5558762c5427cd24
#EXTINF:-1,Discovery Россия HD

acestream://16af01541aa6c0bd281658af2b289c4960252946
#EXTINF:-1,Eureka HD

acestream://468433bee3cb168902e2515557b91563491923c3
#EXTINF:-1,HD-Life

Нужно чтобы скрипт переставил строки, чтобы название канала было сверху, а затем шла ссылка на канал. вот так:
#EXTINF:-1,24Техно
acestream://59d6a51f5bdcdf2f8d861e0bf14856172a7fcbdc

#EXTINF:-1,365 дней ТВ
acestream://84f8cdc56625e9ea5ac73bc1a89df72872cf21a4

#EXTINF:-1,Animal Family HD
acestream://9f0801c4c1ca4f41aaef98a30a1ea492966fc424
подскажите пожалуйста как это сделать.

Русское сообщество AutoIt

Как поменять местами строки
« Отправлен: Декабрь 28, 2018, 14:19:59 »

Оффлайн sngr [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 921
  • Репутация: 370
    • Награды
  • Версия AutoIt: 3.3.8.1
Re: Как поменять местами строки
« Ответ #1, Отправлен: Декабрь 28, 2018, 14:26:23 »
Код: AutoIt [Выделить]
$file=ClipGet()
$str=StringRegExp($file,'(acestream:[^\r\n]+)\r\n([^\r\n]+)',3)
$a=''
For $i = 0 To UBound($str)-1 Step 2
    $a&=$str[$i+1]& @CRLF &$str[$i]& @CRLF & @CRLF
Next
FileWrite(@ScriptDir&'\123.txt',$a)
 


Помечен как лучший ответ пользователем sasha1304 Отправлен Декабрь 28, 2018, 19:01:26

Оффлайн Tempo [?]

  • Скриптер
  • ****
  • Сообщений: 426
  • Репутация: 106
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Как поменять местами строки
« Ответ #2, Отправлен: Декабрь 28, 2018, 14:33:28 »
Код: AutoIt [Выделить]
;~ AutoIt Version: 3.3.14.5
Local $sIn = "acestream://59d6a51f5bdcdf2f8d861e0bf14856172a7fcbdc " & @CRLF & _
        "#EXTINF:-1,24Техно" & @CRLF & _
        @CRLF & _
        "acestream://84f8cdc56625e9ea5ac73bc1a89df72872cf21a4 " & @CRLF & _
        "#EXTINF:-1,365 дней ТВ" & @CRLF & _
        @CRLF & _
        "acestream://9f0801c4c1ca4f41aaef98a30a1ea492966fc424 " & @CRLF & _
        "#EXTINF:-1,Animal Family HD" & @CRLF & _
        @CRLF & _
        "acestream://815daf9ba05ea77cf0fc67771359548eb08a41cd " & @CRLF & _
        "#EXTINF:-1,Animal Planet HD" & @CRLF & _
        @CRLF & _
        "acestream://f9d10e6fa938417babd0311b5558762c5427cd24 " & @CRLF & _
        "#EXTINF:-1,Discovery Россия HD" & @CRLF & _
        @CRLF & _
        "acestream://16af01541aa6c0bd281658af2b289c4960252946 " & @CRLF & _
        "#EXTINF:-1,Eureka HD" & @CRLF & _
        @CRLF & _
        "acestream://468433bee3cb168902e2515557b91563491923c3 " & @CRLF & _
        "#EXTINF:-1,HD-Life"
MsgBox(0, Default, $sIn)

Local $sOut = StringRegExpReplace($sIn, "(?i)(acestream://.*)(\R)(#EXTINF:.*)", "\3\2\1")
MsgBox(0, Default, $sOut)
 


Русское сообщество AutoIt

Re: Как поменять местами строки
« Ответ #2 Отправлен: Декабрь 28, 2018, 14:33:28 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
27 Ответов
12491 Просмотров
Последний ответ Январь 14, 2010, 12:41:01
от snoitaleR
11 Ответов
10305 Просмотров
Последний ответ Февраль 07, 2011, 02:01:34
от Yashied
0 Ответов
3247 Просмотров
Последний ответ Февраль 12, 2011, 21:59:11
от CreatoR
2 Ответов
4685 Просмотров
Последний ответ Ноябрь 11, 2011, 03:36:50
от AZJIO
0 Ответов
2301 Просмотров
Последний ответ Ноябрь 11, 2011, 01:35:31
от Kaster
0 Ответов
2359 Просмотров
Последний ответ Декабрь 25, 2012, 15:09:49
от inververs
3 Ответов
2386 Просмотров
Последний ответ Сентябрь 22, 2013, 20:59:23
от Garrett
2 Ответов
1438 Просмотров
Последний ответ Май 03, 2015, 01:09:10
от Tapok
3 Ответов
1559 Просмотров
Последний ответ Декабрь 17, 2015, 15:33:35
от InnI
3 Ответов
878 Просмотров
Последний ответ Декабрь 20, 2017, 18:07:45
от yl3d