Формирование превью новости для RSS - CodeHelper

Формирование превью новости для RSS

2

Собственно, как сформировать превью новости для отображения в RSS ленте? Есть ли существующие классы для подобных задач? Под новостью я понимаю html-контент, отображаемый на странице. Он может содержать большие картинки, много разного форматирования и пр. Есть ли более или менее красивые подходы для выделения первых, скажем, 500 символов (без учета тэгов) в качестве превью?

Новые ответы


2

Чаще всего удаляються все html теги и отрезается текст по нужной длине, но при этом не по середине слова

public string GetPlainText(string html)
{
    var rexTag = new Regex("<[^>]*>");
    var review = rexTag.Replace(html, " ").Trim();
    var rexSpace = new Regex(@"\s+");

    return rexSpace.Replace(review, " ").Trim();
}

public string GetPlainText(string html, int size)
{
    if (size < 1)
    {
    	throw new ArgumentOutOfRangeException("size", "Parameter cannot be negative or zero");
    }

    var review = GetPlainText(html);

    int i = review.Length;
    if (size < i)
    {
    	i = review.LastIndexOf(" ", size);
    	if (i < 0)
    	{
    		i = 0;
    	}
    }

    return review.Substring(0, i);
}

v1.7.123.556
© 2009—2010 CodeHelper FAQ | О сайте | Обратная связь | История изменений | Статьи
Creative Commons LicenseМатериалы сайта распространяются под лицензией Creative Commons Attribution-Share Alike 3.0 Unported.