写一个正则提取字符串中的IP地址

在前端开发中,你可以使用正则表达式(Regular Expression)来提取字符串中的IP地址。IP地址(IPv4)通常遵循以下格式:xxx.xxx.xxx.xxx,其中每个xxx是一个0到255之间的整数。

以下是一个使用JavaScript和正则表达式提取字符串中所有IP地址的示例:

function extractIPs(text) {
  const ipRegex = /\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b/g;
  const ips = text.match(ipRegex) || [];
  return ips;
}

// 示例用法
const text = "这里有一些IP地址:192.168.1.1, 10.0.0.1 和 255.255.255.255。但不是这个:999.999.999.999。";
const ips = extractIPs(text);
console.log(ips); // 输出: [ '192.168.1.1', '10.0.0.1', '255.255.255.255' ]

在这个示例中,extractIPs函数接受一个字符串参数text,并使用正则表达式ipRegex来匹配并提取所有IP地址。正则表达式\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b用于匹配IPv4地址。然后,使用match方法将匹配到的IP地址存储在ips数组中,并返回该数组。如果没有找到任何IP地址,则返回一个空数组。

posted @ 2025-01-02 06:20  王铁柱6  阅读(281)  评论(0)    收藏  举报