Учитывая строку со словами, разделенными проблемами, мне нужно найти, какое слово встречается раньше: которое начинается с буквы "k" или заканчивается "k"
Я пытался сделать это с операторами Mid и Len, но теперь мне нужно это с помощью Substring и Length
Sub uncorrect(ByVal s As String, ByRef res As String)
Dim i As Integer
Dim t, w As String
s = s + " "
w = ""
For i = 1 To Len(s)
t = Mid(s, i, 1)
If t = " " Then
If (Mid(w, 1, 1) = "k") Then
res = "Word, begin with k"
Exit Sub
Else
If (Mid(w, Len(w), 1) = "l") Then
res = "Word, end with k"
Exit Sub
End If
End If
w = ""
Else
w = w + t
End If
Next
End Sub
Sub trying(ByVal s As String, ByRef res As String)
Dim i As Integer
Dim mass = s.Split(" ")
For i = 0 To mass.Length - 1
If mass(i).Substring(1, 1) = "k" Then
res = "Word, begin with k"
Exit For
Else
If mass(i).Substring(mass(i).Length - 1, 1) = "k" Then
res = "Word, end with k"
Exit For
End If
End If
Next
End Sub
Фактический вывод очень нестабилен: или пустое текстовое поле результата, или ошибка