Вывод сначала два абзаца от HTML, сохраненного как строка

Мне сохранили HTML в строковой переменной в рамках моего c# кода .net 2.0. Ниже пример:

<div class="track">
    <img alt="" src="http://hits.guardian.co.uk/b/ss/guardiangu-feeds/1/H.20.3/30561?ns=guardian&pageName=Hundreds+feared+dead+in+Haiti+quake%3AArticle%3A1336252&ch=World+news&c3=GU.co.uk&c4=Haiti+%28News%29%2CDominican+Republic+%28News%29%2CCuba+%28News%29%2CBahamas+%28News%29%2CNatural+disasters+and+extreme+weather+%28News%29%2CEnvironment%2CWorld+news&c6=Rory+Carroll%2CHaroon+Siddique&c7=10-Jan-13&c8=1336252&c9=Article&c10=News&c11=World+news&c13=&c25=&c30=content&h2=GU%2FWorld+news%2FHaiti" width="1" height="1" />
</div>
<p class="standfirst">
    • Tens of thousands lose homes in 7.0 magnitude quake<br />
    • UN headquarters, schools and hospitals collapse
</p>
<p>
    René Préval, the president of Haiti, has described the devastation after last night's earthquake as "unimaginable" as governments and aid agencies around the world rushed into action.
</p>
<p>
    Préval described how he had been forced to step over dead bodies and heard the cries of those trapped under the rubble of the national parliament. "Parliament has collapsed. The tax office has collapsed. Schools have collapsed. Hospitals have collapsed," <a href="http://www.miamiherald.com/582/story/1422279.html" title="he told the Miami Herald">he told the Miami Herald</a>. "There are a lot of schools that have a lot of dead people in them." Préval said he thought thousands of people had died in the quake.
</p>

Я только хочу произвести первые два абзаца как подстроку orginal.

Кто-то может помочь?

5
задан test 13 January 2010 в 17:54
поделиться

4 ответа

Это двухбайтовая строка:

>>> x='\x1e\x00'
>>> map(ord, list(x))
[30, 0]
>>> [ord(i) for i in x]
[30, 0]
-121--3176671-

Объект с минимальным индексом табуляции автоматически получает фокус (при условии, что свойство TabStop имеет значение true). Просто установите индексы вкладок соответствующим образом.

Visual Studio позволяет легко устанавливать индексы вкладок, просто щелкая элементы управления в нужном порядке. Эту функцию можно активировать, выбрав параметр «Порядок табуляции» в меню «Вид», когда вы находитесь в представлении проектировать формы.

При загрузке формы можно также вручную сосредоточить внимание на элементе управления, вызвав его метод Select .

-121--3483845-

Я использовал эту функцию в конце...

  private string GetFirstParagraph(string htmltext)
        {
            Match m = Regex.Match(htmltext, @"<p>\s*(.+?)\s*</p>");
            if (m.Success)
            {
                return m.Groups[1].Value;
            }
            else
            {
                return htmltext;
            }
        }
4
ответ дан 14 December 2019 в 13:37
поделиться

Посмотрите на Html Agility Pack .

Он раскрывает очень мощный API для разбора HTML, который может быть использован для извлечения данных, которые вы хотите.

3
ответ дан 14 December 2019 в 13:37
поделиться

Являются вами использующий JavaScript? Вы могли использовать, взрываются на тэгах p для получения отделения + первый параграф в одной шт. массива и каждом из тэгов p в их соответствующих элементах.

0
ответ дан 14 December 2019 в 13:37
поделиться

Вы можете написать несколько методов, которые загружают HTML в переменную веб-браузера, а затем использовать DOM для обхода узлов и извлечения любой пользовательской логики. Посмотрите это учебное пособие .

Вот фрагмент того, как создать веб-браузер в коде позади, а не того, как в учебнике рассказывается, как это сделать:

using System.Windows.Forms;

WebBrowser _Browser = null;
string _Source = "Your HTML goes here";

_Browser = new WebBrowser();
_Browser.Navigate("about:Blank");
_Browser.Document.OpenNew(true);
_Browser.Document.Write(_Source);
-1
ответ дан 14 December 2019 в 13:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: