标题:[实践OK]Js一次正则匹配出多个IP到数组之Javascript/js从左侧的textarea里获取多行内容并提取出多个IP行放在右则textarea。 出处:向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除 时间:Wed, 06 Mar 2019 12:01:46 +0000 作者:jackxiang 地址:http://jackxiang.com/post/10114/ 内容: Jquery: Html textarea: javasciprt,先批量替换掉下划线为点号,再正则匹配出所有包含IP行里的IP,如下: var s = $("#textareaLeft").val(); s = s.replace(/\_/g, "."); var ipsArr = s.match(new RegExp("\\d{1,3}\.\\d{1,3}\.\\d{1,3}\.\\d{1,3}","g")); var ips = ipsArr.join('\r\n'); $("#textareaRight").val(ips); 输入素材: elk_logstash_bj_yz_10_73_211_106 elk_logstash_bj_yz_10_73_211_118 elk_logstash_bj_yz_10_73_211_119 输出素材: 10.73.211.106 10.73.211.118 10.73.211.119 Jquery写法,加上IP去重: Html触发部分: [提取Ip地址] $('#analysisIps').click(function() { var s = $("#textareaLeft").val(); if(typeof s == "undefined" || s == null || s == "") return false; s = s.replace(/\_/g, "."); var ipsArr = s.match(new RegExp("\\d{1,3}\.\\d{1,3}\.\\d{1,3}\.\\d{1,3}","g"));     var hash=[],arrIpSorted=[];     for (var i = 0; i < ipsArr.length; i++) {       hash[ipsArr[i]]!=null;       if(!hash[ipsArr[i]]){         arrIpSorted.push(ipsArr[i]);         hash[ipsArr[i]]=true;       } } var ips = arrIpSorted.join('\r\n'); $("#textareaRight").val(ips); }); Generated by Jackxiang's Bo-blog 2.1.1 Release