Regex, чтобы извлечь только домены .com? - PullRequest
0 голосов
/ 27 сентября 2019

У меня есть это регулярное выражение для общих доменов, но что мне нужно изменить, чтобы оно извлекало только домены .com?

^(?:https?:\/\/)?(?:[^@\/\n]+@)?(?:www\.)?([^:\/\n]+)

Ответы [ 3 ]

3 голосов
/ 27 сентября 2019

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

^(?:https?:\/\/)?(?:[^@\/\n]+@)?(?:www\.)?([^:\/\n]+)\.com

Рабочая демоверсия

0 голосов
/ 27 сентября 2019

, если вам просто нужно знать, есть ли попадание (вам не нужна группировка для замены и т. Д.), Просто добавьте

  (\.com) 

до конца.

у вас есть некоторый избытоктам (должен иметь http (s) 0 или 1 раз, должен иметь www. 0 или 1 раз)

, но это будет

0 голосов
/ 27 сентября 2019

Вы захотите добавить .\com в свою основную группу.

Ultimatey Я думаю, что вы ищете:

^(?:https?:\/\/)?(?:[^@\/\n]+@)?(?:www\.)?([^:\/\n]+\.com)

Это можно увидеть работающим здесь:

const regex = /^(?:https?:\/\/)?(?:[^@\/\n]+@)?(?:www\.)?([^:\/\n]+\.com)/;
const sites = [
  'https://www.example.com',
  'https://www.example.org',
  'www.exampe.com',
  'www.example.org'
]

sites.forEach(function(site) {
  console.log(regex.test(site));
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...