BEFORE_PROCESSINGタイトルの下に示されているように、C# で文字列入力としてテキストを入力することを期待しています。このテキストは、次のようにフォーマットする必要があります。
- スタイル タグのない裸のセンテンス (たとえば、センテンス 1) は、センテンス全体を太字にするためにスタイル タグを取得する必要があります。
- 文全体を RED で表示するには、すでにスタイル タグが設定されている文を識別し、その前景色要素を「fg:Red」に設定する必要があります。
- すでにスタイル タグが設定されている文には、スタイル タグがネストされている場合があります。したがって、これを考慮する必要があります。
例として、フォーマットが完了すると、BEFORE_PROCESSINGタイトルの文はAFTER_PROCESSINGの下のテキストのようになります。
私の質問は、このテキスト処理ビジネスを C# で実現する最も効率的な方法は何でしょうか? それは正規表現の使用ですか、それともやり過ぎですか?より良い代替案が存在すると思いますか? ありがとう。
(私はC#4を使用しています)
BEFORE_PROCESSING
"Sentence 1 <style styles='B;fg:Green'>STYLED SENTENCE</style> Sentence 2"
AFTER_PROCESSING
"<style styles='B'>Sentence 1 </style>
<style styles='B;fg:Red'>STYLED SENTENCE</style>
<style styles='B'>Sentence 2</style>"