Visual Basic.NET - Buscar y contar palabras de un Texbox

 
Vista:
Imágen de perfil de Andrés
Val: 48
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Buscar y contar palabras de un Texbox

Publicado por Andrés (27 intervenciones) el 15/02/2018 16:54:50
Buenos días amigos, tengo que hacer un pequeño programa que consiste en que a partir de un texto que se digite en un TextBox, poder a de igual manera en otro TextBox hacer una búsqueda donde hayan coincidencias y que de igual manera poder contar las coincidencias y mostrarlas en un MessageBox, estoy como empezando a programar y voy de esta manera...:

En este caso cuando le doy en boton buscar solo me encuentra la primera coincidencia y yo quiero que me resalte todas las coincidencias, pero antes de eso que en un MessageBox me "diga por ejemplo 3 coincidencias encontradas" es decir me cuente las coincidencias.

De igual manera que si se le da Clic al botón buscar sin haber digitado algo pues que salga otro MessageBox anunciando Por favor digite un texto!, pero en este caso el programa no me recorre Else If, creo que tengo algo mal.

Pero si intento buscar una palabra que no este en el TextBox si me resulta el MessageBox anunciando que la Palabra no fue encontrada!

Les agradecería su colaboración amigos, Gracias por sus aportes!!!

Captura1
Captura2
Captura3
Codigo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Public Class Form1
 
    Private Sub btnbuscar_Click(sender As Object, e As EventArgs) Handles btnbuscar.Click
        Dim buscar As String
        Dim descripcion As String
        Dim palabra As Integer
 
        buscar = txtbuscar.Text
        descripcion = InStr(txtdescripcion.Text, buscar)
 
        If descripcion Then
            Name = palabra + 1
            txtdescripcion.Focus()
            txtdescripcion.SelectionStart = descripcion - 1
            txtdescripcion.SelectionLength = Len(buscar)
 
        ElseIf descripcion = " " And buscar = " " Then
            MessageBox.Show("Por favor digite un texto!", "Buscando coincidencias...", MessageBoxButtons.OK, MessageBoxIcon.Error)
 
        Else
            MessageBox.Show("Palabra no encontrada!", "Resultado!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
        End If
 
    End Sub
 
    Private Sub btnlimpiar_Click(sender As Object, e As EventArgs) Handles btnlimpiar.Click
        txtbuscar.Text = ""
        txtdescripcion.Text = ""
    End Sub
End Class

...Gracias por sus aportes!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de giancarlo
Val: 377
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Buscar y contar palabras de un Texbox

Publicado por giancarlo (488 intervenciones) el 15/02/2018 20:09:13
para que puedas encontrar las coincidencias, te dejo este codigo, para seleccionarlos, no estoy seguro

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Dim cadena, separado, buscar As String
        cadena = "acacaca"
        buscar = "ca"
        separado = ""
 
        Dim total, ultimo As Integer
        total = 0
        ultimo = 0
        For i As Integer = 0 To cadena.Length - 1
            total += 1
            If cadena.IndexOf(buscar, i) >= 0 Then
                separado &= total & vbTab & cadena.IndexOf(buscar, i) & vbNewLine
                i += buscar.Length - 1
            End If
        Next
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Andrés
Val: 48
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Buscar y contar palabras de un Texbox

Publicado por Andrés (27 intervenciones) el 15/02/2018 20:21:18
Vale Giancarlo, muchas gracias! Voy analizar y te comento...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar