Помогите с регуляркой.

  • Автор темы Автор темы Miaso222
  • Дата начала Дата начала

Miaso222

Client
Регистрация
29.06.2021
Сообщения
23
Реакции
1
Баллы
3
Имеем ссылку
ttps://business.facebook.com/home/accounts?global_scope_id=922227265094173&business_id=922227265094173
Нужно получить такую
ttps://business.facebook.com/settings/info?business_id=922227265094173
Сложность в том что цифры всегда разные на ссылках.
 
Имеем ссылку
ttps://business.facebook.com/home/accounts?global_scope_id=922227265094173&business_id=922227265094173
Нужно получить такую
ttps://business.facebook.com/settings/info?business_id=922227265094173
Сложность в том что цифры всегда разные на ссылках.
А при чем тут регулярка, если нужно вырезать по отдельности цифры и формировать новую ссылку?
Попробуйте вырезать через конструктор регулярных выражений нужное.
 
  • Оценить
Реакции: Miaso222
Имеем ссылку
ttps://business.facebook.com/home/accounts?global_scope_id=922227265094173&business_id=922227265094173
Нужно получить такую
ttps://business.facebook.com/settings/info?business_id=922227265094173
Сложность в том что цифры всегда разные на ссылках.
Привет. Попробуй так

Из ссылки ttps://business.facebook.com/home/accounts?global_scope_id=922227265094173&business_id=922227265094173 получаешь id 922227265094173
этой регуляркой
C#:
Развернуть Свернуть Копировать
(?<=business\.facebook\.com/home/accounts\?global_scope_id=\d+&business_id=).*
сохранаешь id в переменную.
А дальше просто к ttps://business.facebook.com/settings/info?business_id= цепляешь ранее полученый id
 
  • Оценить
Реакции: Miaso222
86948
86949

1 Вариант:

2 Вариант:
 
  • Оценить
Реакции: Miaso222
Имеем ссылку
ttps://business.facebook.com/home/accounts?global_scope_id=922227265094173&business_id=922227265094173
Нужно получить такую
ttps://business.facebook.com/settings/info?business_id=922227265094173
Сложность в том что цифры всегда разные на ссылках.
Еще вариант, с простейшим видом регулярки .*?(?=&) и простой текстовой заменой, в 2 шага:

86951
 
еще универсальный вариант с неограниченным количеством искомых параметров
C#:
Развернуть Свернуть Копировать
string url = "https://business.facebook.com/home/accounts?global_scope_id=&business_id=922227265094173";//исходная ссылка
string[] need_params = new string[]{"business_id"};//список интересующих нас параметров
string origin = url.Split('?')[0];//или любая другая ссылка, которой надо передать параметры их исходной ссылки

return origin += '?' + string.Join("&", url.Split('?')[1].Split('&').GroupBy(x=>x).ToDictionary(x=>x.First().Split('=')[0],x=>x.First().Split('=')[1]).Where(x=>need_params.Contains(x.Key)).Select(x=>string.Join("=", new[]{x.Key, x.Value})));
 
  • Оценить
Реакции: Sergodjan

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