How to find the largest substring between two equal characters in a string with VB.NET

1 Answer

0 votes
Imports System

Public Class Program
    Public Shared Function GetLongestSubstring(ByVal str As String) As String
        Dim start As Integer = 0, end_ As Integer = 0, max As Integer = 0
        Dim size As Integer = str.Length

        For i As Integer = 0 To size - 1 - 1
            For j As Integer = i + 1 To size - 1
                If str(i) = str(j) Then
                    Dim temp As Integer = Math.Abs(j - i - 1)
                    If temp > max Then
                        max = temp
                        start = i + 1
                        end_ = j
                    End If
                End If
            Next
        Next

        Return str.Substring(start, end_ - start)
    End Function

    Public Shared Sub Main(ByVal args As String())
		Dim str As String = "zXoDvbnetprogrammingDkmq"
        
		Dim result As String = GetLongestSubstring(str)
        
		Console.Write(result)
    End Sub
End Class




' run:
'
' vbnetprogramming
'

 



answered Dec 25, 2022 by avibootz
...