【发布时间】:2020-06-27 16:41:11
【问题描述】:
如何防止将剪贴板中的重复链接添加到列表框?
这是我的代码。
我使用了正则表达式,以便在剪贴板仅包含 URL 时轻松添加
private void AddLinks()
{
string[] linkItems = Clipboard.GetText().Split(new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries);
Regex regURL = new Regex("https:(.*)", RegexOptions.Compiled | RegexOptions.Multiline);
foreach (string link in linkItems)
{
MatchCollection url = regURL.Matches(link);
LIST_URL.BeginUpdate();
foreach (Match m in url)
{
LIST_URL.Items.Add(m);
}
LIST_URL.EndUpdate();
}
}
【问题讨论】:
-
您能解释一下您的问题吗?你的问题真的不清楚。
-
我的问题是如何避免列表框中的重复项目?每次我添加新的链接项目。它必须检查链接是否已经存在于列表框中
-
好吧,你已经回答了自己:检查它是否已经在列表中,如果没有就添加它。
-
Regex 模式将只获取
https方案的有效网址。地址如www.x.net、google.com、ftp://...、..等。将被忽略。那是你要的吗?否则,请查看this 帖子了解更多正则表达式模式。 -
不,这与正则表达式无关。这是关于避免重复项目。我只是把正则表达式放在以防有人会问。我对那个正则表达式很好。因为我只有特定的链接来加载不是全部。