Возможно ли и как спарсить часть URL строки через html код?

Lextor

Client
Регистрация
19.06.2020
Сообщения
172
Благодарностей
19
Баллы
18
Последнее редактирование:

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 458
Благодарностей
8 682
Баллы
113
@Lextor Как вариант, так. Приложил шаблон.
Кубик 1 - парсинг части урла с данными
Кубик 2 - разделение данных по переменным через Split
Кубик 3 - формирование результата

87548
 

Вложения

  • Спасибо
Реакции: volody00, Lextor и djaga

Lextor

Client
Регистрация
19.06.2020
Сообщения
172
Благодарностей
19
Баллы
18
@Lextor Как вариант, так. Приложил шаблон.
Кубик 1 - парсинг части урла с данными
Кубик 2 - разделение данных по переменным через Split
Кубик 3 - формирование результата

Посмотреть вложение 87548
Благодарю вас. Очень хорошее решение. Я искренне благодарен вам за поддержку. Но к сожалению для моего проекта подойдет только html snipet.
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 458
Благодарностей
8 682
Баллы
113
Но к сожалению для моего проекта подойдет только html snipet.
Немного непонятно, уточните, что именно вы подразумеваете под "html snipet"?
Вам нужна реализация через C# снипет, может быть?
 
  • Спасибо
Реакции: djaga

Lextor

Client
Регистрация
19.06.2020
Сообщения
172
Благодарностей
19
Баллы
18
Да, но точней нужен JavaScript снипет потому что моя вторая программа которая совместно c Zennoposter работает не поддерживает C#.

Есть вот этот снипет он работает:

87753


но проблема что нaвыходе все в одной строке, вот так:
Offer-Nr:12345-115035-Moscow-115280-Moscow-20.01.2022

Если брат такой URL: https://mydomain.com/offer/#12345-115035-Moscow-115280-Moscow-20.01.2022
---------------------------------------------------------------

и второй вопрос, почему cнипет не работает в Zennomaker хотя и рабочий здесь проверить можно: https://de.w3docs.com/tools/code-editor/439

Но проверяем с этим JavaScript кодом а не который выше:

87754

*K сожалению Zennoposter не пропускает код поэтому как картинку прецепил.
 

volody00

Client
Регистрация
06.09.2016
Сообщения
793
Благодарностей
812
Баллы
93
Да, но точней нужен JavaScript снипет потому что моя вторая программа которая совместно c Zennoposter работает не поддерживает C#.
JavaScript:
let result = String(window.location.href.match('\#.*'));
let mass = result.split('-');
let offerNr = "Offer-Nr: " + mass[0];
let Start = "Start: " + mass[1] + " " + mass[2];
let Stop = "Stop: " + mass[3]  + " " + mass[4];
let Order = "Order-Date: " + mass[5];
document.getElementsByTagName('h1')[0].innerHTML = `${offerNr}<br>${Start}<br>${Stop}<br>${Order}`;
 

Вложения

  • Спасибо
Реакции: Lextor и Sergodjan

Lextor

Client
Регистрация
19.06.2020
Сообщения
172
Благодарностей
19
Баллы
18
JavaScript:
let result = String(window.location.href.match('\#.*'));
let mass = result.split('-');
let offerNr = "Offer-Nr: " + mass[0];
let Start = "Start: " + mass[1] + " " + mass[2];
let Stop = "Stop: " + mass[3]  + " " + mass[4];
let Order = "Order-Date: " + mass[5];
document.getElementsByTagName('h1')[0].innerHTML = `${offerNr}<br>${Start}<br>${Stop}<br>${Order}`;

Благодарю. Вы реально эксперт. Все работает. Низкий вам поклон, выручили. Если нужен отзыв обращайтесь.

И последний вопрос: Возможно ли к вашему коду дописать решение для букв ä, ü, ö, ß ?

А то получается при таком URL:
https://mydomain.com/offer/#12345-115035-Maßdöw-115280-Köngün-20.01.2022

Вот что:

Offer-Nr: #12345
Start: 115035 Ma%C3%9Fd%C3%B6w
Stop: 115280 K%C3%B6ng%C3%BCn
Order-Date: 20.01.2022
 

volody00

Client
Регистрация
06.09.2016
Сообщения
793
Благодарностей
812
Баллы
93
Благодарю. Вы реально эксперт. Все работает. Низкий вам поклон, выручили. Если нужен отзыв обращайтесь.

И последний вопрос: Возможно ли к вашему коду дописать решение для букв ä, ü, ö, ß ?

А то получается при таком URL:
https://mydomain.com/offer/#12345-115035-Maßdöw-115280-Köngün-20.01.2022

Вот что:

Offer-Nr: #12345
Start: 115035 Ma%C3%9Fd%C3%B6w
Stop: 115280 K%C3%B6ng%C3%BCn
Order-Date: 20.01.2022
JavaScript:
let result = String(decodeURI(window.location.href.match('\#.*')));
let mass = result.split('-');
let offerNr = "Offer-Nr: " + mass[0];
let Start = "Start: " + mass[1] + " " + mass[2];
let Stop = "Stop: " + mass[3]  + " " + mass[4];
let Order = "Order-Date: " + mass[5];
document.getElementsByTagName('h1')[0].innerHTML = `${offerNr}<br>${Start}<br>${Stop}<br>${Order}`;
 
Последнее редактирование:
  • Спасибо
Реакции: Lextor

Lextor

Client
Регистрация
19.06.2020
Сообщения
172
Благодарностей
19
Баллы
18
JavaScript:
let result = String(decodeURI(window.location.href.match('\#.*')));
let mass = result.split('-');
let offerNr = "Offer-Nr: " + mass[0];
let Start = "Start: " + mass[1] + " " + mass[2];
let Stop = "Stop: " + mass[3]  + " " + mass[4];
let Order = "Order-Date: " + mass[5];
document.getElementsByTagName('h1')[0].innerHTML = `${offerNr}<br>${Start}<br>${Stop}<br>${Order}`;

Появился один вопрос, но сначала хочу еще раз поблогадарить вас за код, до сих пор пользуюсь вашим кодом :bu:

вы знаете почему ваш код может только один раз на странице выполняться? Если его вставить на сайт в форму один раз то он выполняется как надо. Если вставить второй раз на этой же форме только в другое место то выполняется только первый. А если удалить первый код то второй код работает. Снова вставляю первый код, второй перестает работать и работает только первый.


У меня получилось немного изменить код под себя. Но принцип вашего кода в оригинале и вашего кода мною обновленным тот же. Просто текст не в "HEADER" а в самой форме на сайте "BODY" и текст меньше, и без символа #.

URL:
-Price%20inc.%20Service1,%20Service2.%20%3Cbr%3EDetails:%20check%20SMS%20from%2001.02.2022%20with%20Number:230073.-


88232


На выходе получаем:
Offer-Nr: 12345
Start: 115035 Moscow
Stop: 115280 Moscow
Order-Date: 01.02.2022






88233


На выходе получаем:
Price inc. Service1, Service2.
Details: check SMS from 01.02.2022 with Number:230073.



Tак как снипет нужно выполнять в разном месте на форме код-1 и код-2 должен быть отдельным.
Что можно изменить в коде чтобы один код другому не мешал?
 

Вложения

Последнее редактирование:

volody00

Client
Регистрация
06.09.2016
Сообщения
793
Благодарностей
812
Баллы
93
Имена переменных не должны дублироваться (result, mass и т.д.)
 
  • Спасибо
Реакции: Lextor

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)