Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/REGEXEXTRACT - настройка регулярного выражения - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, китин  
REGEXEXTRACT - настройка регулярного выражения
Faraway Дата: Вторник, 13.11.2018, 14:02 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 72
Репутация: 0 ±
Замечаний: 20% ±

Excel 2016
Здравствуйте.
Есть необходимость приводить к некоторому порядку адресов сайтов. Надо чтоб из полного формата адресов типа http://www.сайт.домен/далее куча символов, приводило в формат сайт.домен.
В сети когда то давно нашел вот такую формулу, которую использую как обезьяна, знаю куда вставить чтоб работало, но как оно работает - не знаю. Не знание идет именно от REGEXEXTRACT и далее.
Вот сама формула которую использую:
Код
=ArrayFormula(ЕСЛИ(ДЛСТР(C1:C)=0;"";REGEXEXTRACT(C1:C;"https?:\/\/(.[^\/]+)")))

как работает и поиграться можно ТУТ, формула в желтой ячейке.
В общем в чем суть вопроса... Некоторые сайты идут с WWW., а некоторые без этой части. Надо как то подкорректировать условие, чтоб если в сайте есть WWW., чтоб его тоже удаляло.
Спасибо.


Сообщение отредактировал Faraway - Вторник, 13.11.2018, 14:04
 
Ответить
СообщениеЗдравствуйте.
Есть необходимость приводить к некоторому порядку адресов сайтов. Надо чтоб из полного формата адресов типа http://www.сайт.домен/далее куча символов, приводило в формат сайт.домен.
В сети когда то давно нашел вот такую формулу, которую использую как обезьяна, знаю куда вставить чтоб работало, но как оно работает - не знаю. Не знание идет именно от REGEXEXTRACT и далее.
Вот сама формула которую использую:
Код
=ArrayFormula(ЕСЛИ(ДЛСТР(C1:C)=0;"";REGEXEXTRACT(C1:C;"https?:\/\/(.[^\/]+)")))

как работает и поиграться можно ТУТ, формула в желтой ячейке.
В общем в чем суть вопроса... Некоторые сайты идут с WWW., а некоторые без этой части. Надо как то подкорректировать условие, чтоб если в сайте есть WWW., чтоб его тоже удаляло.
Спасибо.

Автор - Faraway
Дата добавления - 13.11.2018 в 14:02
sboy Дата: Вторник, 13.11.2018, 14:35 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2566
Репутация: 724 ±
Замечаний: 0% ±

Excel 2010
Добрый день.
Добавить надо REGEXREPLACE() или ПОДСТАВИТЬ()
Код
=ArrayFormula(ЕСЛИ(ДЛСТР(C1:C)=0;"";REGEXREPLACE(REGEXEXTRACT(C1:C;"https?:\/\/(.[^\/]+)");"www\.";"")))


Яндекс: 410016850021169
 
Ответить
СообщениеДобрый день.
Добавить надо REGEXREPLACE() или ПОДСТАВИТЬ()
Код
=ArrayFormula(ЕСЛИ(ДЛСТР(C1:C)=0;"";REGEXREPLACE(REGEXEXTRACT(C1:C;"https?:\/\/(.[^\/]+)");"www\.";"")))

Автор - sboy
Дата добавления - 13.11.2018 в 14:35
_Boroda_ Дата: Вторник, 13.11.2018, 14:37 | Сообщение № 3
Группа: Админы
Ранг: Местный житель
Сообщений: 16738
Репутация: 6534 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
А, вот с кем я там внутри таблицы пересекался
Такой вариант (с ПОДСТАВИТЬ)
[vba]
Код
=ArrayFormula(IF(LEN(C1:C)=0;"";SUBSTITUTE(REGEXEXTRACT(C1:C;"https?:\/\/(.[^\/]+)");"www.";"")))
[/vba]


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеА, вот с кем я там внутри таблицы пересекался
Такой вариант (с ПОДСТАВИТЬ)
[vba]
Код
=ArrayFormula(IF(LEN(C1:C)=0;"";SUBSTITUTE(REGEXEXTRACT(C1:C;"https?:\/\/(.[^\/]+)");"www.";"")))
[/vba]

Автор - _Boroda_
Дата добавления - 13.11.2018 в 14:37
Faraway Дата: Вторник, 13.11.2018, 14:48 | Сообщение № 4
Группа: Пользователи
Ранг: Участник
Сообщений: 72
Репутация: 0 ±
Замечаний: 20% ±

Excel 2016
Спасибо
Высшая математика )
 
Ответить
СообщениеСпасибо
Высшая математика )

Автор - Faraway
Дата добавления - 13.11.2018 в 14:48
Gustav Дата: Вторник, 13.11.2018, 18:06 | Сообщение № 5
Группа: Админы
Ранг: Участник клуба
Сообщений: 2809
Репутация: 1184 ±
Замечаний: ±

начинал с Excel 4.0, видел 2.1
Посмею сократить исходную регулярку:
[vba]
Код
"https?:\/\/(.[^\/]+)"
[/vba]
до:
[vba]
Код
"\/+([^/]*)"
[/vba]


МОИ: Ник, Tip box: 41001663842605
 
Ответить
СообщениеПосмею сократить исходную регулярку:
[vba]
Код
"https?:\/\/(.[^\/]+)"
[/vba]
до:
[vba]
Код
"\/+([^/]*)"
[/vba]

Автор - Gustav
Дата добавления - 13.11.2018 в 18:06
Faraway Дата: Вторник, 13.11.2018, 18:35 | Сообщение № 6
Группа: Пользователи
Ранг: Участник
Сообщений: 72
Репутация: 0 ±
Замечаний: 20% ±

Excel 2016
"\/+([^/]*)"

да, так работает тоже, круто )
но заметил кое что, если так сократить и ввести сайт без http://, то возвращается какое то значение, не верное... а если оставить длинный вариант, то вернет ошибку, что нет данных. Для меня вариант с ошибкой более подходящий, но все равно спасибо.


Сообщение отредактировал Faraway - Вторник, 13.11.2018, 18:51
 
Ответить
Сообщение
"\/+([^/]*)"

да, так работает тоже, круто )
но заметил кое что, если так сократить и ввести сайт без http://, то возвращается какое то значение, не верное... а если оставить длинный вариант, то вернет ошибку, что нет данных. Для меня вариант с ошибкой более подходящий, но все равно спасибо.

Автор - Faraway
Дата добавления - 13.11.2018 в 18:35
Gustav Дата: Вторник, 13.11.2018, 19:52 | Сообщение № 7
Группа: Админы
Ранг: Участник клуба
Сообщений: 2809
Репутация: 1184 ±
Замечаний: ±

начинал с Excel 4.0, видел 2.1
[offtop]
но заметил кое что, если так сократить и ввести сайт без http://, то возвращается какое то значение, не верное...

Помните/знаете такой анекдот?
Купили как-то суровым сибирским лесорубам японскую бензопилу.
............................................................
Подсунули ей железный лом. «КРЯК!» — сказала пила.
«Ага, #ля!!!» — укоризненно сказали суровые сибирские лесорубы! И ушли рубить лес топорами… (с первоначальной регуляркой https?://) ;)


МОИ: Ник, Tip box: 41001663842605
 
Ответить
Сообщение[offtop]
но заметил кое что, если так сократить и ввести сайт без http://, то возвращается какое то значение, не верное...

Помните/знаете такой анекдот?
Купили как-то суровым сибирским лесорубам японскую бензопилу.
............................................................
Подсунули ей железный лом. «КРЯК!» — сказала пила.
«Ага, #ля!!!» — укоризненно сказали суровые сибирские лесорубы! И ушли рубить лес топорами… (с первоначальной регуляркой https?://) ;)

Автор - Gustav
Дата добавления - 13.11.2018 в 19:52
anvg Дата: Среда, 14.11.2018, 13:36 | Сообщение № 8
Группа: Друзья
Ранг: Ветеран
Сообщений: 581
Репутация: 271 ±
Замечаний: 0% ±

2016, 365
Интересно, что заставило Google использовать какую-то кривую библиотеку RE2 для регулярных выражений вместо javascript версии? В результате вместо простого шаблона "[^/:]+(?=/|$)" городится огород :)
 
Ответить
СообщениеИнтересно, что заставило Google использовать какую-то кривую библиотеку RE2 для регулярных выражений вместо javascript версии? В результате вместо простого шаблона "[^/:]+(?=/|$)" городится огород :)

Автор - anvg
Дата добавления - 14.11.2018 в 13:36
Faraway Дата: Воскресенье, 18.11.2018, 21:40 | Сообщение № 9
Группа: Пользователи
Ранг: Участник
Сообщений: 72
Репутация: 0 ±
Замечаний: 20% ±

Excel 2016
"[^/:]+(?=/|$)"

понимал бы хоть что то из этого - может бы что то и ответил )))
А где можно посмотреть все доступные регулярные выражения? Есть где то хороший список с описанием?
 
Ответить
Сообщение
"[^/:]+(?=/|$)"

понимал бы хоть что то из этого - может бы что то и ответил )))
А где можно посмотреть все доступные регулярные выражения? Есть где то хороший список с описанием?

Автор - Faraway
Дата добавления - 18.11.2018 в 21:40
Gustav Дата: Воскресенье, 18.11.2018, 22:06 | Сообщение № 10
Группа: Админы
Ранг: Участник клуба
Сообщений: 2809
Репутация: 1184 ±
Замечаний: ±

начинал с Excel 4.0, видел 2.1
Есть где то хороший список с описанием?

Дык, постом выше Вашего anvg же дал ссылку на RE2.


МОИ: Ник, Tip box: 41001663842605
 
Ответить
Сообщение
Есть где то хороший список с описанием?

Дык, постом выше Вашего anvg же дал ссылку на RE2.

Автор - Gustav
Дата добавления - 18.11.2018 в 22:06
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!