正则表达式从字符串中捕获域名,包括特定 TLD 的电子邮件地址



我需要正则表达式,它可以从字符串中解析域名,包括来自电子邮件地址的域。 我在StackOverflow上找到了以下正则表达式:

/(?:[w-]+.)+[w-]+/

根据提供的演示,它的工作原理是著名的:https://regex101.com/r/aF1cY0/5

我从StackOverflow上的另一个问题中得到了正则表达式:

如何使用 javascript 正则表达式从字符串中获取域

我想更改现有的正则表达式以仅匹配特定的 TLD(例如.com|net|biz)

由于我是正则表达式的新手,因此我很难弄清楚该规定放在哪里。

任何帮助将不胜感激。

/(?:[w-]+.)+(?:com|net|biz)/i

function check(){
  var str = prompt("URL example: ");
  var match = str.match(/(?:[w-]+.)+(?:com|net|biz)/i);
  if(match)
    alert("Your domain is: '" + match + "'");
  else
    alert("Sorry! Nothing matched!");
}
<button onclick="check()">TRY</button>

试试这个

(?:[w-]+.)+com|net|biz

最新更新