elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  [SOLUCIONADO] Buscar todas las variantes de un string
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [SOLUCIONADO] Buscar todas las variantes de un string  (Leído 2,629 veces)
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.885



Ver Perfil
[SOLUCIONADO] Buscar todas las variantes de un string
« en: 9 Enero 2013, 01:10 am »

¿Alguien me puede recordar como se hacia esto?

Olvidé que método se usa para esto xD

Código
  1. Dim STR = "abc"
  2. If Cosa.Contains(STR) Then ...
  3.  
  4. ' Quiero que busque todas las variantes:
  5. ' Abc
  6. ' ABc
  7. ' ABC
  8. ' aBC
  9. ' abC
  10. ' etc...


« Última modificación: 9 Enero 2013, 16:07 pm por EleKtro H@cker » En línea



seba123neo


Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: Buscar todas las variantes de un string
« Respuesta #1 en: 9 Enero 2013, 02:07 am »

hay varias formas y algoritmos sobre todo recursivos, pero aca paso una bastante reducida.

Código
  1. Public Class Form1
  2.  
  3.    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  4.        Dim vLetras As String = "abcABC" ' Letras que se van a usar
  5.        Dim vSize As Integer = 3 ' Longitud del resultado
  6.  
  7.        Dim vLista As IEnumerable(Of String) = vLetras.Select(Function(x) x.ToString())
  8.  
  9.        For i As Integer = 0 To vSize - 2
  10.            vLista = vLista.SelectMany(Function(x) vLetras, Function(x, y) x + y)
  11.        Next
  12.  
  13.        For Each t As String In vLista
  14.            Debug.WriteLine(t)
  15.        Next
  16.    End Sub
  17. End Class


En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.885



Ver Perfil
Re: Buscar todas las variantes de un string
« Respuesta #2 en: 9 Enero 2013, 15:56 pm »

Gracias, pero no me aclaro, ¿Como puedo adaptarla a mis necesidades?

Tengo una "Search bar" que debe buscar resultados en los archivos de texto de "My.Resources", y mostrar cada resultado encontrado en el listview.
Lo único que quiero es hacer el texto a buscar en modo "Ignorecase" xD




Al pulsar el botón "Buscar":
Código
  1. For Each Dict As DictionaryEntry In ResourceSet.OfType(Of Object)()
  2.            If TypeOf (Dict.Value) Is String Then
  3.                Find_Delimited_Text(My.Resources.ResourceManager.GetObject(Dict.Key), ";", TextBox_Buscar.Text)


Find_Delimited_Text sub:
Código
  1.    Public Sub Find_Delimited_Text(ByVal TextFile As String, ByVal TextDelimiter As String, ByVal PatternSTR As String)
  2.  
  3.        Dim vLetras As String = PatternSTR
  4.        Dim vSize As Integer = PatternSTR.Length  ' ¿?
  5.  
  6.        Dim vLista As IEnumerable(Of String) = vLetras.Select(Function(x) x.ToString())
  7.  
  8.        For i As Integer = 0 To vSize - 2
  9.            vLista = vLista.SelectMany(Function(x) vLetras, Function(x, y) x + y)
  10.        Next
  11.  
  12.        For Each t As String In vLista
  13.            MsgBox(t)
  14.        Next
  15.  
  16.        Dim Listview_Row_STR(4) As String
  17.        Dim Listview_Item = New ListViewItem(Listview_Row_STR)
  18.        Dim TextDelimited As String()
  19.        Dim delimiter As String = TextDelimiter
  20.        Dim fileContent As String = TextFile
  21.  
  22.        Dim stringStream As New System.IO.StringReader(fileContent)
  23.        Using parser As New Microsoft.VisualBasic.FileIO.TextFieldParser(stringStream)
  24.            parser.SetDelimiters(TextDelimiter)
  25.            While Not parser.EndOfData
  26.                TextDelimited = parser.ReadFields()
  27.                If TextDelimited(0).Contains(PatternSTR) Then
  28.                    field_find_number += 1
  29.                    Listview_Row_STR(0) = field_find_number
  30.                    Listview_Row_STR(1) = TextDelimited(0)
  31.                    Listview_Row_STR(2) = TextDelimited(1)
  32.                    Listview_Row_STR(3) = TextDelimited(2)
  33.                    Listview_Item = New ListViewItem(Listview_Row_STR)
  34.                    ListView.Items.Add(Listview_Item)
  35.                End If
  36.            End While
  37.        End Using
  38.    End Sub



EDITO:
Bueno, creo que convirtiendo los dos strings a lowercase da menos vueltas y funciona.

Código
  1. If TextDelimited(0).ToLower.Contains(PatternSTR.ToLower) Then

Saludos!
« Última modificación: 9 Enero 2013, 16:06 pm por EleKtro H@cker » En línea



Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
problema con variantes y rutas [batch] (SOLUCIONADO) « 1 2 »
Scripting
SuperDraco 19 18,983 Último mensaje 23 Noviembre 2009, 09:25 am
por SuperDraco
Buscar cadena en String
.NET (C#, VB.NET, ASP)
.:Weeds:. 2 3,191 Último mensaje 11 Febrero 2011, 08:46 am
por .:Weeds:.
Buscar string en un archivo, y obtener datos
Programación C/C++
emma1990 3 5,834 Último mensaje 21 Marzo 2011, 23:34 pm
por Akai
[Solucionado] Comparar un String con cada una de las partes de otro String « 1 2 »
.NET (C#, VB.NET, ASP)
Segurida 13 12,522 Último mensaje 14 Mayo 2011, 18:52 pm
por Segurida
Buscar string en Matriz [Solucionado]
Programación C/C++
;c1v!c 8 13,101 Último mensaje 24 Enero 2012, 15:57 pm
por ;c1v!c
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines