copyright 1999 - 2014 by heinz prelle - hannover  - lenbachstraße 42 - www.visual-basic5.de | impressum
'Beispiel: VB .Net - RegEx - Position der ersten vorkommenden Zahl in einer Zeichenkette ermitteln
'
Option Explicit On
Option Strict On

Imports System.Text.RegularExpressions

Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
            Handles Button1.Click
        Dim Number As String = ""
        Dim Result As Integer = Me.FindNumberPosition(Me.TextBox1.Text, Number)
        If Result > -1 Then
            MessageBox.Show("Index: " & Result & System.Environment.NewLine & _
                "Gefundene Zahl: " & Number, "Info")
        Else
            MessageBox.Show("Es wurde keine Zahl in dem uebergebenen String gefunden.", "Info")
        End If
    End Sub

    Private Function FindNumberPosition(ByVal Source As String, ByRef Number As String) As Integer
        If Not String.IsNullOrEmpty(Source) Then
            Try
                Dim pattern As String = "\d+"
                Dim regex As New Regex(pattern)
                Dim m As Match = regex.Match(Source)
                If m.Success Then
                    Number = m.Value
                    Return m.Index
                Else
                    Return -1
                End If
            Catch
                Return -1
            End Try
        End If
        Return -1
    End Function

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) _
            Handles MyBase.Load
        CenterToScreen()
        Me.TextBox1.Text = "Hallo 3 Welt"
    End Sub
End Class