0

次の文字列からすべてのhtmlタグを削除し、ピリオド(ピリオド)を一致する文字として使用せずに分割したいと思います。次の刺し傷は動的な刺し傷であり、リストタグ内により多くの条件を持つことができます

<li>This Offer cannot be redeemed with any other offer.</li><li>Only one Offer can be used at a time.</li><li>This Offer is not transferable.</li><li>......</li><li>....</li</ul></div>

私は次の結果を期待しています

  1. このオファーは、他のオファーと引き換えることはできません。
  2. 一度に使用できるオファーは1つだけです。
  3. このオファーは譲渡できません。
  4. ...。
  5. ...。
4

3 に答える 3

1
String[] myString = yourString.replace("<li>", "").Split(new string[] { "</li>" }, StringSplitOptions.RemoveEmptyEntries);

これを試して

const string HTML_TAG_PATTERN = "<[^/li]>"; // may require some change
string safeString = Regex.Replace(yourString, HTML_TAG_PATTERN, string.Empty);
String[] myString = safeString.Split(new string[] { "</li>" }, StringSplitOptions.RemoveEmptyEntries);

この正規表現も試すことができます

string acceptable = "li";
string stringPattern = @"</?(?(?=" + acceptable + @")notag|[a-zA-Z0-9]+)(?:\s[a-zA-Z0-9\-]+=?(?:(["",']?).*?\1?)?)*\s*/?>";
string yourString= Regex.Replace(yourString, stringPattern, string.Empty);
String[] myString = yourString.replace("<li>", "").Split(new string[] { "</li>" }, StringSplitOptions.RemoveEmptyEntries);
于 2013-03-26T05:44:22.037 に答える
0

すべてのhtmlタグを削除して、以下のコードで分割することもできます

string HTML_TAG_PATTERN = "<.*?>";
string str = @"<li>This Offer cannot be redeemed with any other offer.</li><li>Only one Offer can be used at a time.</li><li>This Offer is not transferable.</li><li>......</li><li>....</li</ul></div>";
string[] stString = Regex.Replace(str.Replace("</li>", "#$#"), HTML_TAG_PATTERN, string.Empty).Split("#$#".ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
于 2013-03-26T05:58:47.280 に答える
-1

あなたがあなたのthenにidを与えることができるならば<li>、あなたは次のようなjavascriptコードで試すことができます>>

var str=doccument.getElementById("liID").innerHTML;

これは、Windowsのonloadイベント、またはアプリケーションに応じた特定のイベントで試すことができます。

于 2013-03-26T05:49:02.323 に答える