2011-08-20 12 views
5

que tienen una cadena que va como "abcdefg..."Encuentra el índice de un char en una cadena?

Me gustaría encontrar el índice donde la letra d está en, por lo que se puede obtener el número .

Logré hacerlo al recorrer cada letra de la cadena, pero eso no suena muy conveniente. ¿Hay otra manera?

Respuesta

14

La clase String expone algunos métodos para activar este, como IndexOf y LastIndexOf, de modo que usted puede hacer esto:

Dim myText = "abcde" 
Dim dIndex = myText.IndexOf("d") 
If (dIndex > -1) Then 

End If 
2
"abcdefgh..".IndexOf("d") 

retornos 3

En retornos generales de índice primera aparición, si no está presente devuelve -1

3

Se producen contados si se usa el método de la presente letra, y se almacena el correspo Para obtener el número usando el método IndexOf, vea el ejemplo a continuación.

Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click 
    Dim myString As String = "abcdef" 
    Dim numberString As String = String.Empty 

    If myString.Contains("d") Then 
     numberString = myString.IndexOf("d") 
    End If 
End Sub 

Otra muestra con TextBox

Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click 
    Dim myString As String = "abcdef" 
    Dim numberString As String = String.Empty 

    If myString.Contains(me.TextBox1.Text) Then 
     numberString = myString.IndexOf(Me.TextBox1.Text) 
    End If 
End Sub 

Regards

Cuestiones relacionadas