Форум программистов, компьютерный форум, киберфорум
JavaScript для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
1 / 1 / 0
Регистрация: 02.02.2019
Сообщений: 110

Есть офлайн конвертор на JavaScript его нужно исправить

14.12.2023, 12:50. Показов 638. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
чтобы делать обратное конвертирование
из формата ресивера в файл m3u
Чтобы работало так:
Вводим так:
Code
1
2
3
4
5
#NAME IPTV
#SERVICE 4097:0:1:2:0:0:0:0:0:0:http%3a//gavrilovka.klaipedalt.xyz/iptv/Y6D8WQK7Y2Y7WB/19222/index.m3u:ТВЦ HD
#DESCRIPTION ТВЦ HD
#SERVICE 4097:0:1:4:0:0:0:0:0:0:https%3a//tvchannelstream1.tvzvezda.ru/cdn/tvzvezda/playlist_hdhigh.m3u8:Звезда HD
#DESCRIPTION Звезда HD
----------------
Должны получить так:
Code
1
2
3
4
#EXTINF:-1,ТВЦ HD
http://gavrilovka.klaipedalt.xyz/iptv/Y6D8WQK7Y2Y7WB/19222/index.m3u
#EXTINF:-1,Звезда HD
https://tvchannelstream1.tvzvezda.ru/cdn/tvzvezda/playlist_hdhigh.m3u8
-----------------
Выдаёт ошибки:
Code
1
2
3
4
5
#EXTM3U
#EXTINF:-1
://gavrilovka.klaipedalt.xyz/iptv/Y6D8WQK7Y2Y7WB/19222/index.m3u:ТВЦ HD
#EXTINF:-1
s://tvchannelstream1.tvzvezda.ru/cdn/tvzvezda/playlist_hdhigh.m3u8:Звезда HD
1. Не сохраняет в ссылке: http
2. Убрать в конце ссылки название канал
============================
Вот файл с ошибками:
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<!DOCTYPE html>
<html>
<head>
    <title>Конвертор</title>
</head>
<body>
    <h2>Конвертор формата ресивера в файл m3u</h2>
    <textarea id="inputTextArea" rows="10" cols="50" placeholder="Вставьте данные из ресивера"></textarea><br>
    <button onclick="reverseConvert()">Обратное преобразование</button><br><br>
    <textarea id="outputTextArea" rows="10" cols="50" placeholder="Результат"></textarea>
 
    <script>
        // Функция для обратного преобразования формата ресивера в файл m3u
        function convertFromReceiverFormat(input) {
            let lines = input.split('\n');
            let output = '#EXTM3U\n';
            for (let i = 0; i < lines.length; i++) {
                if (lines[i].startsWith("#DESCRIPTION")) {
                    let channelName = lines[i].split(':').pop().trim();
                    let channelURL = lines[i - 1].split('http')[1].split('%3a').join(':').split('%2f').join('/');
                  output += '#EXTINF:-1' + '\n' + channelURL + '\n';
 
                }
            }
            return output;
        }
 
        // Функция, вызываемая при нажатии кнопки "Обратное преобразование"
        function reverseConvert() {
            let inputText = document.getElementById('inputTextArea').value; // получаем введенный текст
            let outputText = convertFromReceiverFormat(inputText); // выполняем обратное преобразование
            document.getElementById('outputTextArea').value = outputText; // выводим результат
        }
    </script>
</body>
</html>
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.12.2023, 12:50
Ответы с готовыми решениями:

Нужно исправить javascript ошибку в консоли
Здравствуйте, уважаемые форумчане! Хочу интегрировать меню на JavaScript в Joomla3. Появляется ошибка в консоли браузера. Возможно это не...

Кто может исправить есть запрос рабочий на developer sql, есть программка на С#, нужно с запроса взять три пункта
Кто может помочь есть запрос рабочий на developer sql, есть программка на С#, нужно с запроса взять три пункта и заменить их в программке...

Нужно исправить код и добавить переменную JavaScript
Нужно исправить код и добавить переменную. Имеется следующий код, который добавляет CSS через JS: d=(window.innerWidth-70)/d; ...

3
168 / 146 / 32
Регистрация: 03.09.2018
Сообщений: 499
14.12.2023, 14:04
JavaScript
1
2
3
4
5
6
7
8
9
10
11
function decodeString(input) {
  let regex = /(http[^:\s]*):([^:\s]+):([^:\n]+)/g;
  let result = '';
  for (const match of decodeURIComponent(input).matchAll(regex)) {
    let [fullMatch, url, encodedPart, description] = match;
    let decodedPart = decodeURIComponent(encodedPart);
    result += `\n#EXTINF:-1,${description}\n${url}:${decodedPart}`;
  }
 
  return result.trim();
}
0
1 / 1 / 0
Регистрация: 02.02.2019
Сообщений: 110
14.12.2023, 14:11  [ТС]
Уважаемый Именч спасибо.
Всавил Ваш фрагмент в код
На выходе пусто ?
Может быть я неправильно вставил Ваш фрагмент?
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<!DOCTYPE html>
<html>
<head>
    <title>Конвертор</title>
</head>
<body>
    <h2>Конвертор формата ресивера в файл m3u</h2>
    <textarea id="inputTextArea" rows="10" cols="50" placeholder="Вставьте данные из ресивера"></textarea><br>
    <button onclick="reverseConvert()">Обратное преобразование</button><br><br>
    <textarea id="outputTextArea" rows="10" cols="50" placeholder="Результат"></textarea>
 
    <script>
        // Функция для обратного преобразования формата ресивера в файл m3u
        function decodeString(input) {
  let regex = /(http[^:\s]*):([^:\s]+):([^:\n]+)/g;
  let result = '';
  for (const match of decodeURIComponent(input).matchAll(regex)) {
    let [fullMatch, url, encodedPart, description] = match;
    let decodedPart = decodeURIComponent(encodedPart);
    result += `\n#EXTINF:-1,${description}\n${url}:${decodedPart}`;
  }
 
  return result.trim();
}
 
        // Функция, вызываемая при нажатии кнопки "Обратное преобразование"
        function reverseConvert() {
            let inputText = document.getElementById('inputTextArea').value; // получаем введенный текст
            let outputText = convertFromReceiverFormat(inputText); // выполняем обратное преобразование
            document.getElementById('outputTextArea').value = outputText; // выводим результат
        }
    </script>
</body>
</html>
0
176 / 74 / 27
Регистрация: 10.11.2023
Сообщений: 199
14.12.2023, 14:17
Лучший ответ Сообщение было отмечено satfan как решение

Решение

JavaScript
1
2
3
4
5
6
7
8
     // Функция для обратного преобразования формата ресивера в файл m3u
        function convertFromReceiverFormat(input) {
            const regexp = /#SERVICE\s[\d\:]+(https|http).+(\/\/.+)\:(.+)/g;
            const matches = input.matchAll(regexp);
            return '#EXTM3U\n' + [...matches]
                .map((m) => `#EXTINF:-1,${m[3]}\n${m[1]}:${m[2]}\n`)
                .join('')
        }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.12.2023, 14:17
Помогаю со студенческими работами здесь

Нужно исправить. Используется закрывающий </script> внутри javascript
В одном каталоге 2 файла. stylescrayon.txt &lt;link href='http://alexgorbatchev.com/pub/sh/2.1.364/styles/shCore.css'...

Есть код нужно исправить ошибки
есть задача: ввести размер квадратной матрицы и ее элементы. Элементы матрицы расположить в динамической памяти. Определить номер...

Почему есть небольшой отступ слева и как его исправить?
Нашел в нашем любимом интернете такой код навбара, всё в нём мне нравится кроме одного - есть небольшой отступ слева, и я не могу понять...

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

Нужно сделать на javascript светофор, чтобы его цвета были сделаны через фильтр GLOW
Мне нужно сделать на javascript светофор,ну как настоящий..переключается как надо.и плюс к этому чтобы его цвета были сделаны через фильтр...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru