Соответствует только любой строке символов, которые не содержат пробелов и заканчиваются на ".com", ".net" или ".org":
/[^\s]+\.(?:com|net|org)\b/i
Пояснение:
/
= начало регулярного выражения
[^\s]
= Не (^
) символ пробела (\s
)
+
= Один или несколько из предыдущего набора (непробельные символы)
\.
= Точка. Точки в RegExps являются специальными символами, в противном случае
(?: ... )
= группа, но не та, которая будет сохранена
com|net|org
= com
ИЛИ net
ИЛИ org
(Вы можете добавить больше здесь, разделив "|")
\b
= Граница слова - конец слова
/
= Конец регулярного выражения (кроме необязательных флагов)
i
= нечувствителен к регистру
Расширение ответа
По запросу OP ниже приводится (грубый) RegExp, который должен соответствовать URL для домена, заканчивающегося указанными строками, и с одной или несколькими парами ключ = значение в строке запроса.
/[^\s]+\.(?:com|net|org)[^\s]+\?[^\s]+=[^\s]+(?:\&?[^\s]+=[^\s]+)*\b/i
/
= начало регулярного выражения
[^\s]+\.(?:com|net|org)
= Как и раньше
[^\?]+
= Один или несколько символов без знака вопроса (это может быть любая папка или имя файла). Опять же, у вопросительного знака есть \
, прежде чем он будет рассматриваться как нормальный символ, так как в противном случае он имеет особое значение здесь
\?
= Вопросительный знак
[^\s]+\=[^\s]+
= Одно или несколько непробельных символов, затем знак равенства, затем одно или несколько непробельных символов
(?:\&?[^\s]+=[^\s]+)*
= Нет или более наборов амперсанда &
, затем еще одно или несколько непробельных символов, знак равенства и одно или несколько непробельных символов
\b
= Конец строки
/
= Конец регулярного выражения
i
= Нечувствителен к регистру
ПРИМЕЧАНИЕ: Это не ищет полностью действительные URL-адреса и не учитывает множество кодов стран (например, «.com.au» для Австралии) или других доменов верхнего уровня (например, .edu 'и т. д.) Но он будет соответствовать приведенной строке примера: twitter.com / example? var = true