Как преобразовать текст уценки (WMD) в обычный текст - PullRequest
2 голосов
/ 07 июля 2010

Я сохраняю текст уценки и HTML-версии текста в моей базе данных для моего сайта вопросов и ответов.

Когда пользователи просматривают вопросы, они просматривают фрагменты уценки.Они должны просматривать только простой текст, точно так же, как при просмотре вопросов по stackoverflow не отображается текст уценки или HTML-текст.

Есть ли способ преобразовать уценку или HTML-текст в обычный текст?

Ответы [ 2 ]

3 голосов
/ 07 июля 2010

Вопросы по StackOverflow просматриваются в формате HTML, а не в виде обычного текста.Они очищены с помощью HTML-дезинфицирующего средства Джеффа Этвуда, а затем преобразованы в HTML с помощью MarkDownSharp .

Я задал этот вопрос несколько недель назад, иРешение, которое я выбрал, заключалось в том, чтобы сохранить исходную разметку в базе данных, а затем преобразовать ее, когда она будет показана посетителю.

Вот как я очищаю свою разметку

        ''# Because some people can be real ass holes and try to submit bad data (scripts and crap)
        ''# we have to modify the "About" content in order to sanitize it.  At the same time, we
        ''# transform the Markdown into valid HTML
        user.About = Trim(Utilities.HtmlSanitizer.Sanitize(MarkDownSharp.Transform(user.About)))

С момента MarkdownSharpэто открытый исходный код, я уверен, что вы можете покопаться в исходном коде и удалить дополнительные теги, которые вы не хотите видеть в предварительном просмотре.

РЕДАКТИРОВАТЬ:

Так как в моем примереЯ очищаю HTML перед преобразованием уценки, думаю, вам придется удалить теги <b> или <strong> в HtmlSanitizer и MarkdownSharp.Причина этого заключается в том, что вам необходимо очистить необработанные HTML-теги И теги уценки.

0 голосов
/ 27 августа 2012

Другое решение - использовать XSLT-файл уценки.

Например: HTML к тексту уценки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...