Autor
|
Tema: [Solucionado] Comparar un String con cada una de las partes de otro String (Leído 10,512 veces)
|
Segurida
Desconectado
Mensajes: 61
|
De nuevo el título lo dice todo, necesito comparar un String con cada una de las partes de otro String, el primer String, es simple (una línea sin separadores, ni nada) el segundo String, es una combinación de muchos, separados por un salto de línea (puede poner otro separador diferente, pero para la lectura, resulta mejor el salto de línea), necesito comparar el primer String con cada una de las partes del segundo, es decir, comparar el primer String con cada una de las líneas del segundo String. Si me pueden ayudar se lo agradezco. saludos.
|
|
« Última modificación: 14 Mayo 2011, 19:03 pm por Segurida »
|
En línea
|
|
|
|
Edu
Desconectado
Mensajes: 1.082
Ex XXX-ZERO-XXX
|
Explicate mostrando como has intentado hacerlo vs, yo por ahora entiendo esto:
string1 = "Federico"
string2 = "Edu\nFederico\nPedro"
El segundo string en realidad lo tendras en algun textbox o donde sea asi:
Edu Federico Pedro
Y queres q verifique si el string1 existe en una de esas lineas?
|
|
|
En línea
|
|
|
|
neoncyber
|
Simplemente utiliza el metodo split, que te devolvera un arreglo de cadenas separadas por los caracteres que tu especifiques, luego, empiezas a iterar y comparar. Esto seria mas facil si tuvieras algo como un StringTokenizer en .net, pero con el metodo Split es mas que suficiente Este es un metodo de MSDN: class TestStringSplit { static void Main() { char[] delimiterChars = { ' ', ',', '.', ':', '\t' }; string text = "one\ttwo three:four,five six seven"; System.Console.WriteLine("Original text: '{0}'", text); string[] words = text.Split(delimiterChars); System.Console.WriteLine("{0} words in text:", words.Length); foreach (string s in words) { System.Console.WriteLine(s); } } }
Saludos
|
|
|
En línea
|
#!/usr/bin/python print "Visit:" print "http:\\donkeysharp.blogspot.com"
|
|
|
Novlucker
Ninja y
Colaborador
 
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
neoncyber, por que dices que sería más fácil con algo como un StringTokenizer? Tener que crear un objeto más es más sencillo?  Saludos
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
neoncyber
|
neoncyber, por que dices que sería más fácil con algo como un StringTokenizer? Tener que crear un objeto más es más sencillo?  Saludos Hola, bueno dije que seria mas sencillo utilizar algo como un StringTokenizer, ya que esta clase en java abstrae y hace el trabajo en este tipo de casos mucho mas facil. Saludos
|
|
|
En línea
|
#!/usr/bin/python print "Visit:" print "http:\\donkeysharp.blogspot.com"
|
|
|
Segurida
Desconectado
Mensajes: 61
|
¿Se puede compara cada parte de un String con cada parte de otro? es decir; String1: uno,dos,tres,cuatro,cinco,seis, etc... String2: uno,tres,seis,nueve, etc... comprobar cada parte del primer string con cada parte del segundo, y las coincidencias guardarlas en otro string, para luego poder seguir con otra cosa... ¿se puede hacer? gracias y saludos. Edito: @neoncyber ese código no me hace nada, lo he pasasdo a vb 2008, no utilizo c#, pero aún asi, creo que no me funciona por que mi aplicacion no es consola, es un form, seguiré intentado, pero de momento no consiguo que funcione. gracias y saludos.
|
|
« Última modificación: 9 Mayo 2011, 10:51 am por Segurida »
|
En línea
|
|
|
|
neoncyber
|
Bueno, obviamente el codigo no funcionara xq es solo un snippet nada mas, solo queria mostrarte una forma para separar cadenas segun los separadores que tu indiques. De este modo en un arreglo a separas elementos de la cadena 1,y en un arreglo b, separas los elementos de la cadena 2 luego puedes seguir el siguiente pseudocodigo
Para cada cadena cadi en arregloA Para cada cadena cadj en arregloB Si cadi y cady son iguales Procesar cadenas como se desee
Saludos
|
|
|
En línea
|
#!/usr/bin/python print "Visit:" print "http:\\donkeysharp.blogspot.com"
|
|
|
Segurida
Desconectado
Mensajes: 61
|
¿Pero entonces cómo puedo compararlas parte por parte? Otra cosa, ¿cómo puedo compararlas y saber cuál es el número de posición del String que ha coincidido? Es decir: String1: uno,dos,tres,cuatro,cinco,seis String2: uno,tres,seis,nueve
comparar cada una de las partes del String1 con cada una de las partes del String2, y por ejemplo (en este caso) coincide en la parte 1 (uno), coincide en la parte 3 del String1 (tres) y en la parte 2 del String2 (tres), cómo podría saber que coinciden en esas partes? Tengo un código que me trae de cabeza, si con esto no lo consigo, abro un tema nuevo y haber si me pueden dar una mano, porque ya me quedo sin ideas para que funcione, y no hay manera de hacerlo bien... saludos.
|
|
|
En línea
|
|
|
|
neoncyber
|
Hola, aca te dejo el codigo, lo que hace es recivir dos parametros de entrada con las cadenas que deseas comparar, luego, las separa en un arreglo de cadenas para cada cadena de entrada, luego, va recorriendo y comparando, y muestra las partes iguales, en la linea en la que imprime tu podrias concatenarlas. Private Shared Sub Comparar(cad1 As String, cad2 As String) Dim delimiterChars As Char() = {" "C, ","C, "."C, ControlChars.Tab, ControlChars.Lf} Dim wordsCad1 As String() = cad1.Split(delimiterChars) Dim wordsCad2 As String() = cad2.Split(delimiterChars) System.Console.WriteLine("Las partes que coinciden son:") For Each s1 As String In wordsCad1 For Each s2 As String In wordsCad2 If s1.Equals(s2) Then System.Console.WriteLine(s1) End If Next Next End Sub
Saludos
|
|
|
En línea
|
#!/usr/bin/python print "Visit:" print "http:\\donkeysharp.blogspot.com"
|
|
|
seba123neo
|
Hola, mira te paso un metodo de comparacion que es espectacular, lo acabo de descubrir hace poco en una pagina y lo use en mi programa de mostrar los usuarios online de este foro. [SOURCE] Aplicación para ver los usuarios Online en el forote compara 2 arrays y te dice las diferencias entre ellos, te dice los elementos que se mantienen y los que se agregaron. por ejemplo: Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim vLista1() As String = {"123456", "234567", "2233556", "4563434"} Dim vLista2() As String = {"123456", "999999", "888888", "4563434"} Dim vDiferencias = vLista2.Except(vLista1) Dim vIguales = vLista2.Intersect(vLista1) Dim vEliminados = vLista1.Except(vLista2) For Each s As String In vDiferencias Debug. WriteLine("Nuevos en el segundo array: " & s ) Next For Each s As String In vIguales Debug. WriteLine("Se repiten en los 2 array: " & s ) Next For Each s As String In vEliminados Debug. WriteLine("No estan en el segundo array: " & s ) Next End Sub End Class
saludos.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Problema al comparar variable de valor string con letra SOLUCIONADO
Scripting
|
<ИΘZIЭ(ŦB>
|
4
|
6,497
|
23 Agosto 2009, 01:47 am
por leogtz
|
|
|
como puedo hacer q mi JTextArea me imprima mas de un dato string datos string
Dudas Generales
|
alda19
|
1
|
4,717
|
15 Junio 2011, 03:18 am
por Novlucker
|
|
|
(SOLUCIONADO) Como usar un string en la propiedad ROOTFOLDER de un dialogo?
.NET (C#, VB.NET, ASP)
|
Eleкtro
|
5
|
4,222
|
23 Noviembre 2012, 15:30 pm
por Novlucker
|
|
|
Como creo un arreglo MultiClase? a = {String, int, miclase}
Programación C/C++
|
Synth3tik0
|
2
|
2,390
|
1 Enero 2013, 21:11 pm
por 0xDani
|
|
|
[Android] Como puedo obtener el item en un string para comparar en el if?
Java
|
@XSStringManolo
|
2
|
2,355
|
9 Noviembre 2019, 17:17 pm
por @XSStringManolo
|
|