17

.NETでマークダウンをhtmlに変換するにはどうすればよいですか?

var markdown = "Some **bold** text";
var output = ConvertMarkdownToHtml(markdown)
// Output: <p>Some <strong>bold</strong> text</p>

表示時に HTML に変換する必要があるデータベースに保存されている Markdown テキストがあります。

StackOverflow のWMD Editor (現在はPageDown )については知っていますが、それはクライアント側のみを変換します。

4

5 に答える 5

14

着実に進んでいるように見える別の実装はMarkdownDeepです

これは、C#とJavaScriptの両方の完全な実装です。NugetのMarkdownHelperは、MarkdownSharpの代わりにMarkdownDeepを使用しています。

私は両方を使用しましたが、MarkdownDeepはより完全に機能しているようで、JavaScriptバージョンを使用するとクライアント側のセットアップをすばやく行うことができます。

于 2011-04-28T13:44:32.100 に答える
4

Markdown Sharpは、このサイトで使用されており、NuGetで入手できます。

于 2009-01-20T08:44:25.473 に答える
3

Markdown Sharpをチェックしてください。Stack Overflow の開発から生まれたオープン ソース ライブラリであり、markdown.net よりもはるかに堅牢で積極的に開発されています。

于 2010-10-02T14:24:43.763 に答える
1

マークダウンシャープ

John Leidegren が指摘したように、Markdown Sharp はコード的にもそれほど悪くはありません。正規表現をコメントアウトしたり、複雑なプロジェクトを管理したりするのはそれほど簡単ではありません。それは間違いなく非常に高速で、十分にサポートされています. マークアップ パーサー ベースのアプローチはまだ見つかりません。次に例を示します。

        pattern = string.Format(@"
            (?:
                (?<=\n\n)           # Starting after a blank line
                |                   # or
                \A\n?               # the beginning of the doc
            )
            (                       # save in $1
                [ ]{{0, {0}}}
                <(hr)               # start tag = $2
                \b                  # word break
                ([^<>])*?           #
                /?>                 # the matching end tag
                [ \t]*
                (?=\n{{2,}}|\Z)     # followed by a blank line or end of document
            )", tabWidth - 1);
        text = Regex.Replace(text, pattern, new MatchEvaluator(HtmlEvaluator), RegexOptions.IgnorePatternWhitespace);
于 2011-09-11T19:48:17.477 に答える