none
Obtener una cadena entre dos caracteres RRS feed

  • Pregunta

  • estoy leyendo una variable string que contiene codigo html

    mi variable string es:

    variable = "div class="clearfix"><i class="_3-90 _8o _8s lfloat _ohe img sp_SeXnLWDyDgU sx_17019b"></i><div class="_42ef"><div><div class="_50f3">Trabajó como Mentor en <a class="profileLink" href="https://www.facebook.com/uruguayendeavor/?timeline_context_item_type=intro_card_work&amp;timeline_context_item_source=100001463790786" data-hovercard="/ajax/hovercard/page.php?d=139218396094454&amp;extragetparams=%7B%22timeline_context_item_type%22%3A%22intro_card_work%22%2C%22timeline_context_item_source%22%3A100001463790786%7D" data-hovercard-prefer-more-content-show="1">Endeavor Uruguay</a></div><span class="_50f8"></span></div></div></div></li><li class="_1zw6 _md0 _5h-n _5vb9" id="u_0_27" data-profile-intro-card="1" data-store="&#123;&quot;event&quot;:&quot;context_item_view_click&quot;&#125;">"

    pero no importa toda la variable solo quiero leer lo que hay entre estos caracteres ><

    o sea si pudiera de alguna manera leer lo que hay entre esos dos caracteres obtendria: 

    Trabajó como Mentor en Endeavor Uruguay

    (hay alguna manera de aclararle a c# que lea lo que hay solo entre los caracteres ><)

    gracias de antemano




    • Editado RivadeiroUno miércoles, 28 de febrero de 2018 5:59
    miércoles, 28 de febrero de 2018 5:57

Respuestas

  • Yo utilizaría el HTML Agility Pack.

    Este es un ejemplo exacto a como se ve aquí, excepto que cambié a la propiedad InnerText.  Esto da exactamente lo que usted busca.

    var html = @"<!DOCTYPE html>
    <html>
    <body>
    	<h1>This is <b>bold</b> heading</h1>
    	<p>This is <u>underlined</u> paragraph</p>
    	<h2>This is <i>italic</i> heading</h2>
    </body>
    </html> ";
    
    var htmlDoc = new HtmlDocument();
    htmlDoc.LoadHtml(html);
    
    var htmlBody = htmlDoc.DocumentNode.SelectSingleNode("//body");
    
    Console.WriteLine(htmlBody.InnerText);


    Jose R. MCP
    Code Samples

    • Marcado como respuesta RivadeiroUno jueves, 1 de marzo de 2018 0:55
    miércoles, 28 de febrero de 2018 6:11
    Moderador
  • hola

    recomiendo evalues utilizar la libreria

    HtmlAgilityPack

    con esta podras parsear el htmly extraer los datos

    http://html-agility-pack.net/

    analiza los ejemplos de github

    HtmlDocumentTests

    saludios


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina


    miércoles, 28 de febrero de 2018 13:02

Todas las respuestas

  • Yo utilizaría el HTML Agility Pack.

    Este es un ejemplo exacto a como se ve aquí, excepto que cambié a la propiedad InnerText.  Esto da exactamente lo que usted busca.

    var html = @"<!DOCTYPE html>
    <html>
    <body>
    	<h1>This is <b>bold</b> heading</h1>
    	<p>This is <u>underlined</u> paragraph</p>
    	<h2>This is <i>italic</i> heading</h2>
    </body>
    </html> ";
    
    var htmlDoc = new HtmlDocument();
    htmlDoc.LoadHtml(html);
    
    var htmlBody = htmlDoc.DocumentNode.SelectSingleNode("//body");
    
    Console.WriteLine(htmlBody.InnerText);


    Jose R. MCP
    Code Samples

    • Marcado como respuesta RivadeiroUno jueves, 1 de marzo de 2018 0:55
    miércoles, 28 de febrero de 2018 6:11
    Moderador
  • hola

    recomiendo evalues utilizar la libreria

    HtmlAgilityPack

    con esta podras parsear el htmly extraer los datos

    http://html-agility-pack.net/

    analiza los ejemplos de github

    HtmlDocumentTests

    saludios


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina


    miércoles, 28 de febrero de 2018 13:02