С появлением новых доменов верхнего уровня (.club, .jobs и т. д.) каковы наилучшие методы извлечения/анализа доменов из текста? Мой типичный подход - регулярное выражение, однако, учитывая, что такие вещи, как имена файлов с расширениями, будут вызывать ложные срабатывания, мне нужно что-то более ограничительное.
Я заметил, что даже Google иногда неправильно распознает, ищу ли я имя файла или хочу перейти в домен. Это представляется довольно сложной проблемой. Машинное обучение потенциально может быть подходом к пониманию контекста, окружающего строку. Однако, если нет библиотеки, которая уже делает это, я не буду слишком увлекаться.
Один из подходов, о котором я думаю, — после регулярного выражения запрашивать http://data.iana.org/TLD/tlds-alpha-by-domain.txt, который содержит статический список текущих TLD и использует его в качестве фильтра. Какие-либо предложения?