一个多行文本框,里面每一行一个ip地址。有很多重复的。
我希望点一下按钮就把重复的删除,剩下不重复的。
请问正则可以做到吗。谢谢。
const regex = /\n?(^\d+(?:\.\d+){3}$)(?=.*\1)/sgm;
const str = `123.23.45.5
123.23.45.7
123.23.45.5
123.23.45.5
123.23.45.6
123.13.45.5
123.23.45.5
123.23.45.5
123.23.45.5`;
const subst = ``;
// 替换的值将会被包含在结果变量中
const result = str.replace(regex, subst).replace(/^\s*$\n/g,'');
console.log(result);
16 回答2.9k 阅读✓ 已解决
6 回答4.2k 阅读✓ 已解决
14 回答5.5k 阅读
7 回答1.8k 阅读
14 回答2k 阅读
3 回答994 阅读✓ 已解决
6 回答1.1k 阅读✓ 已解决
正则表达式本身并不具有去重的功能, 你可以使用正则表达式来匹配出文本中的所有 IP 地址,然后再使用其他方法来去重