0

RTFドキュメントをプログラムでロードしているWinform RichTextBoxがあります。しかし、RTFをRichTextBoxにロードする前に、RTFからすべてのハイパーリンクとテーブルを削除/削除したい(ただし、フォーマットを維持する必要がある)。MS Word からコピーした RTF テキストにも同じ動作が必要です。どうすればこれを達成できますか? RTF を解析してハイパーリンクとテーブルを削除するライブラリはありますか (フォーマットは維持されます)。

4

1 に答える 1

1

1 つの方法は、rtf 形式を確認し、正規表現で削除することです。

編集: たとえば、ハイパーリンクには次のようなものを使用できます。

Regex rHyperlink = new Regex(@"{\\field{\\\*\\fldinst{HYPERLINK [^}]+}}{\\fldrslt{(?:\\cf\d+)?(?:\\ul)?([^}]+)}}}");
richTextBox1.Rtf = rHyperlink.Replace(richTextBox1.Rtf, "$1");
于 2013-10-09T21:36:42.110 に答える