-1

現在、多数の技術仕様が HTML ファイルとして「公開」されているプロジェクトがあります。HTML ファイルは Web サーバーでホストされませんが、PC のローカル ファイル システムからアクセスできるように圧縮されて配布されます。

私は、発行者が HTML 自体内のカスタム タグに基づいて HTML ファイルのコンテンツを修正できる「発行」システムを作成するというアイデアを検討しています。サーバーベースの場合、これはPHPまたはASPを使用するのと似ていると思います。

たとえば、私は追加するかもしれません

<Publisher action="___" params="________" />

パブリッシャーは「タグ」の存在を検出して必要な処理を行い、必要な HTML をファイルに挿入してタグを置き換えます。

.NETベースのテクノロジを使用してこれを達成する方法、または同じことを達成する別の方法を知っている人はいますか?

4

1 に答える 1

0

OK、これが最もエレガントなソリューションかどうかはわかりませんが、うまくいきます。

1) Cannot delete directory with Directory.Delete(path, true)に基づいて、公開された「サイト」が移動する予定のターゲットをクリアします。

2) 次に、受け入れられたソリューションに基づくコードを使用してすべてのファイルをコピーします

3) すべての「HTM」または「HTML」ファイルを傍受し、正規表現を使用して「処理」が必要かどうかを確認します。これは、http://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex.replace (v=vs.71).aspx (以下に表示)のサイトのコードに基づいています。

using System.Text.RegularExpressions;

class RegExSample 
{
   static string CapText(Match m) 
   {
     // Get the matched string.
     string x = m.ToString();
     // If the first char is lower case...
     if (char.IsLower(x[0])) 
     {
        // Capitalize it.
       return char.ToUpper(x[0]) + x.Substring(1, x.Length-1);
     }
     return x;
   }

   static void Main() 
   {
     string text = "four score and seven years ago";
     System.Console.WriteLine("text=[" + text + "]");
     string result = Regex.Replace(text, @"\w+",
        new MatchEvaluator(RegExSample.CapText));
     System.Console.WriteLine("result=[" + result + "]");
   }
}
于 2012-01-23T15:13:08.123 に答える