Heim > Backend-Entwicklung > C#.Net-Tutorial > asp.net regulärer Ausdruck zum Löschen des Codes des angegebenen HTML-Tags

asp.net regulärer Ausdruck zum Löschen des Codes des angegebenen HTML-Tags

高洛峰
Freigeben: 2017-02-03 15:14:11
Original
1452 Leute haben es durchsucht

Wenn Sie alle darin enthaltenen HTML-Tags löschen, kann es zu Leseschwierigkeiten kommen (z. B. img-Tags). Es ist am besten, einige zu löschen und einige beizubehalten.

In regulären Ausdrücken wird dies beurteilt Diese Zeichenfolgen sind sehr leicht zu verstehen, aber wie man beurteilen kann, ob sie bestimmte Zeichenfolgen enthalten (eine Zeichenfolge, kein Zeichen, etwas, nicht ein bestimmtes), ist wirklich rätselhaft

<(?!((/?\s?li)|(/?\s?ul)|(/?\s?a)|(/?\s?img)|(/?\s?br)|(/?\s?span)|(/?\s?b)))[^>]+>
Nach dem Login kopieren

Dies Die reguläre Regel besteht darin, zu beurteilen, dass das HTML-Tag nicht li / ul / a / img / br / span / b enthält. In Bezug auf die oben genannten Anforderungen müssen alle HTML-Tags mit Ausnahme der hier aufgeführten gelöscht werden ist etwas, nach dem ich schon lange gesucht habe.
(?!exp) entspricht einer Position, auf die nicht folgt: exp <🎜/?s? aber der Test ist fehlgeschlagen.

Das Folgende ist eine einfache Funktion, die die beizubehaltenden TAGs aneinanderreiht, einen regulären Ausdruck generiert und dann die unnötigen TAGs löscht...

private static string RemoveSpecifyHtml(string ctx) { 
string[] holdTags = { "a", "img", "br", "strong", "b", "span" };//要保留的 tag 
// <(?!((/?\s?li)|(/?\s?ul)|(/?\s?a)|(/?\s?img)|(/?\s?br)|(/?\s?span)|(/?\s?b)))[^>]+> 
string regStr = string.Format(@"<(?!((/?\s?{0})))[^>]+>", string.Join(@")|(/?\s?", holdTags)); 
Regex reg = new Regex(regStr, RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.IgnoreCase); 


return reg.Replace(ctx, ""); 
}
Nach dem Login kopieren
Korrektur :

Wenn li beibehalten wird, werden Sie feststellen, dass der Link auch während des tatsächlichen Betriebs beibehalten wird. Die Lösung besteht darin, die b-Behauptung hinzuzufügen asp.net reguläre Regeln Bitte beachten Sie die PHP-Chinese-Website für verwandte Artikel zum Ausdruck, um den Code des angegebenen HTML-Tags zu löschen!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage