4


1

C#のテキストボックスからHTMLタグを取得する

ASP.NET Webアプリケーションに、HTMLコードの入力に使用されるテキスト領域があります。 また、ボタンコントロールもあります。クリックすると、テキストボックス内の特定のhtmlタグの間に配置されたテキストのみが取得されます。

例えば:

1)ユーザーがタグなどを含むhtmlコードを入力します。 [OK]ボタンをクリックします2)私のコードでは、テキスト領域からテキストが取得され、「

タグは文字列オブジェクトに保存する必要があります。

私は明らかにテキストエリアからテキストを取得して文字列オブジェクトに添付することができますが、「

  1. 誰かが私を助けてもらえますか?

1 Answer


2


これを試して…​ MSDNから抜粋し、状況を示すために若干修正した例:

using System;
using System.Text.RegularExpressions;

class Example
{
   static void Main()
   {
      string text = "start I want to capture this end";
      string pat = @""((?:.|\r|\n)+?)"";

      // Instantiate the regular expression object.
      Regex r = new Regex(pat, RegexOptions.IgnoreCase);

      // Match the regular expression pattern against a text string.
      Match m = r.Match(text);
      int matchCount = 0;
      while (m.Success)
      {
         Console.WriteLine("Match"+ (++matchCount));
         for (int i = 1; i <= 2; i++)
         {
            Group g = m.Groups[i];
            Console.WriteLine("Group"+i+"='" + g + "'");
            CaptureCollection cc = g.Captures;
            for (int j = 0; j < cc.Count; j++)
            {
               Capture c = cc[j];
               System.Console.WriteLine("Capture"+j+"='" + c + "', Position="+c.Index);
            }
         }
         m = m.NextMatch();
      }
   }
}

この動作は、http://ideone.com/MVaiX [ideone.com]で確認できます。

を含めたい場合は、

結果にタグを追加し、正規表現の角かっこを置く場所を次のように変更します。

string pat = @"((?:.|\r|\n)+?)";