2011-07-05 21 views
2

winformアプリケーションでRichTextBoxの太字のみを選択し、角括弧で囲む必要があります。 例:The Rollup Action element describes the desired action that should be applied to the cluster activity that defines the Rollup Rule
太字のテキストは
[Rollup Action] [Rollup Rule]
になります。ありがとう。太字のテキストを選択

+1

WPF、winforms? –

+0

winforms、申し訳ありませんが、私はそれについて言及しませんでした。 – FadelMS

+0

結果テキストに大括弧で囲まれたテキストまたはすべてのテキストだけが必要で、太字に大括弧を追加するだけです。 –

答えて

1

一つの解決策は、太字のテキストを検索し、同じものと交換するために正規表現を使用することなく、ブラケットを追加します:

richTextBox.Rtf = Regex.Replace(richTextBox.Rtf, @"\\b ((\w|)*)", RegExSample.AddBrackets); 

そしてMatchEvaluator:

public class RegExSample 
{ 
     public static string AddBrackets(Match match) 
     { 
      return String.Format("[{0}]", match.Value); 
     } 
} 

出力をするためにあなたのサンプルは次のようになります。

[ロールアップアクション] element descri BES あなたはまた、それはすべてのケースでうまく動作することを確認する正規表現を更新することができ がを定義するクラスタ・アクティビティ[ロールアップルール]

に適用する必要があり、必要なアクション。

+0

ありがとう、アドリアン、それは動作します。ただし、太字が別の書式(イタリックなど)と組み合わされている場合は、次のマッチまで続きます。すべての書式の可能性を含む式はありますか? – FadelMS

関連する問題