Título: 2 delimitadores para obtener texto (vb.net) Publicado por: <housedir> en 22 Julio 2013, 07:30 am hola a todos, esto es algo que me parece muy simple pero que vb.net como que lo hace dificil o complicado, ya intente con ubound y lbound pero no logre hacer lo que quiero, lo que deseo es lo siguiente, supongamos que tengo este texto en un textbox:
hola a todos <inicio>bienvenidos[fin] adios lo que quiero obtener es "bienvenidos", cabe mencionar que el texto "bienvenidos" siempre va a variar, lo unico que siempre sera igual son los delimitadores <inicio> y [fin], saludos y gracias por su ayuda Título: Re: 2 delimitadores para obtener texto (vb.net) Publicado por: Eleкtro en 22 Julio 2013, 07:53 am esto es algo que me parece muy simple pero que vb.net como que lo hace dificil o complicado Disculpa si me equivoco pero por tu comentario me parece que desconoces una cosa muy importante de la programación, es la forma más idonea de hacerlo y compatible con el 99% de lenguajes, Son las expresiones regulares: http://en.wikipedia.org/wiki/Regular_expression http://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex%28v=vs.110%29.aspx Código
EDITO: Los RegEx te sirven para cualquier circunstancia, no recomiendo usar otra forma como por ejemplo replaces o splits o funciones de VB6 como "InStr, Left, Split", pero si quieres algo de eso puedes hacer esto otro: Código
Saludos Título: Re: 2 delimitadores para obtener texto (vb.net) Publicado por: El Benjo en 22 Julio 2013, 07:57 am En realidad lo tienes sencillo.
Primero utiliza la función InStr() para obtener la posición donde aparece "<inicio>" Después vuelva a utilizar esa función para obtener la posición donde aparece "[final]" Ahora saca la utiliza la función Left() para obtener la cadena desde el primer marcador hasta el segundo. Si no entiendes bien cómo es esto te daré una pista: VariableFinal - VariableInicio Y por último utiliza la función Replace() para eliminar "<inicio>" y "[final]". Título: Re: 2 delimitadores para obtener texto (vb.net) Publicado por: <housedir> en 22 Julio 2013, 08:31 am Disculpa si me equivoco pero por tu comentario me parece que desconoces una cosa muy importante de la programación, es la forma más idonea de hacerlo y compatible con el 99% de lenguajes, Son las expresiones regulares: http://en.wikipedia.org/wiki/Regular_expression http://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex%28v=vs.110%29.aspx Código
EDITO: Los RegEx te sirven para cualquier circunstancia, no recomiendo usar otra forma como por ejemplo replaces o splits o funciones de VB6 como "InStr, Left, Split", pero si quieres algo de eso puedes hacer esto otro: Código
Saludos Muchas gracias por tu ayuda, si las conozco pero se me hace un poco confuso usar las expresiones regulares, en realidad los delimitadores son "<div class="lo que sea">" y "</div>" de un codigo html, quisiera sacar el contenido de ese div pero no se como colocar las expresiones en vb.net Título: Re: 2 delimitadores para obtener texto (vb.net) Publicado por: Eleкtro en 22 Julio 2013, 22:13 pm ahora no estoy delante de la IDE para testear, pero prueba así:
Código
...Y matcheas el grupo 1. Aquí tienes otros ejemplos que te servirán: http://foro.elhacker.net/net/libreria_de_snippets_posteen_aqui_sus_snippets-t378770.0.html;msg1856865#msg1856865 |