在文本框中分析1 / 3、2 / 3和3/3

时间:2019-04-09 05:07:19

标签: vb.net

enter image description here

如果我们要说一个文本框或列表框:包含项目:1 7 10

Lines 1: " 0 "
Lines 2: " 1 "
Lines 3: " 1 "
Lines 4: " 1,7 "
Lines 5: " 7,10 "

我如何进行1 / 3、2 / 3和3/3的绘制分析-即绘制-上次显示一个数字,两个数字或所有三个数字时的绘制。如果不存在,最多+1

Example: 1/3 = 1
2/3 = 3
3/3 = 5

When 1/3 = 1 or 7 or 10
When 2/3 = 1,7 or 7,10
When 3/3 = 1,7,10.

如果存在最后绘制项目,则重置为0。例如:如果第1行包含1,7,10(全部重置为0),则1/3 = 0-2/3 = 0和3/3 =0。因为所有项目包含在最后的抽奖中。

第4行:“ 1,7”包含2个项目,母猪2/3可以为3,因为第1行,第2行和第3行不包含2个项目。

分析是从下至上进行的。第1行实际上是最后一次抽签。

这是抽奖分析,这些数字没有显示/显示多长时间。

2 个答案:

答案 0 :(得分:0)

如果我理解正确,那就是这样:

For i = listbox1.items.count to 0 step - 1
    If result.contains(value) then
        Msgbox("something")
        Exit for
    End if
Next

答案 1 :(得分:0)

这将在列表中向后循环并以逗号分隔的字符串查找值的数量。然后根据值的数量增加/重置计数。

Dim lastDraw1 As Integer = 0    '1/3
Dim lastDraw2 As Integer = 0    '2/3
Dim lastDraw3 As Integer = 0    '3/3

For i = linesList.Count To 0 Step -1
    Dim lineVals As String() = linesList.Item(i).Replace(" ", "").Split(",")

    Select Case lineVals.Count()
        Case 1
            lastDraw1 = 0
            lastDraw2 += 1
            lastDraw3 += 1
        Case 2
            lastDraw1 = 0
            lastDraw2 = 0
            lastDraw3 += 1
        Case 3
            lastDraw1 = 0
            lastDraw2 = 0
            lastDraw3 = 0
        Case Else
            'This should probably also be handled
    End Select
Next

由于缺乏信息,此处做出了一些假设:

  • 在不知道数据结构如何的情况下,我只假设了一个值列表。

  • 该行的值将仅包含用逗号分隔的值列表。

  • 如果您需要检查特定值,则应创建一个整数列表,并针对该整数检查lineVals