首页 > 解决方案 > 检查元素是否为范围,然后将其与另一个范围进行比较

问题描述

范围号是 Ports 数组中的元素。这是1000-2000。对于这个元素,我想比较这个范围的每个元素是否包含元素 1500-1600。如果是则错误,如果否则没关系。

这是我正在解决的问题。目前,我不确定如何检测元素是否是一个范围-以及从它到另一个端口范围的每个元素并处理比较。

已尝试将其与“-”匹配以检测当前数组元素是否为范围,然后继续执行一些代码。但它不起作用。

for each item in ports
if the item = regex.ismatch([anynumber]-[anynumber]) then Listbox.items.add(item)
next

for each item in listbox
if item.range.contains(another range) then "NOTOK" else "OK"

next

输出应该是如果端口列表包含 5555 并且使用的端口范围是 5000-5600,那么它应该显示错误。

标签: vb.netnumberscomparerange

解决方案


这是个大问题,但是当我继续使用 arraylist 和 listbox 时,问题就解决了。tp 是端口的arraylist 加上端口的范围。listbox14 是我们需要与项目 10-80 进行比较的端口范围,

For Each item In ListBox14.Items
    Dim cooler() As Char = item
    For i As Integer = range(0) To range(1)
    ListBox15.Items.Add(i)
    Next
else 
ListBox15.Items.Add(item)
Next

所以现在列表框包含我需要比较的所有范围项目!TP 是端口集合,对于 tp 中的每个项目 If ListBox15.Items.Contains(item) Then TextBox1.Text = "Wrong PORT" & item Else Listbox7.items.add("True") End IF

IF listbox7.items.count = tp.count then TextBox1.Text = "ALL PORT are good to GO" & item

当我越来越多地研究它时,这真的对我有用!感谢所有 StackOverflow 线程产生了这个想法并完成了这项研究。


推荐阅读