Heim > Web-Frontend > Front-End-Fragen und Antworten > So entfernen Sie HTML in ASP

So entfernen Sie HTML in ASP

藏色散人
Freigeben: 2023-01-06 11:12:29
Original
2921 Leute haben es durchsucht

So entfernen Sie HTML aus ASP: 1. Deaktivieren Sie das HTML-Tag. 2. Verwenden Sie zum Entfernen die Methode „function RemoveHTML(){...}“. HTML-Code über VBScript.

So entfernen Sie HTML in ASP

Die Betriebsumgebung dieses Artikels: Windows7-System, HTML5- und ASP3.0-Version, Dell G3-Computer.

ASP HTML-Code entfernen:

Methode 1: HTML deaktivieren

Der einfachste Weg ist, HTML-Tags direkt zu deaktivieren, ohne sie zu entfernen. Sie können beispielsweise die Funktion „Replace()“ verwenden:

strText = Replace(strText, "<script", "<script", 1, -1, 1)
Nach dem Login kopieren

oder direkt alle HTML-Dateien deaktivieren.

strText = Replace(strText, "<", "<")
Nach dem Login kopieren

Obwohl dies sicher ist, ist es nicht benutzerfreundlich (Der vom Benutzer übermittelte Text wird schwer lesbar)

Methode 2: Verwenden Sie „<“ und „>“

So lassen Sie HTML-Tags verschwinden aus dem Text Was? Wir können alles zwischen „<“ und „>“ entfernen. In JavaScript ist dies einfach:

function RemoveHTML( strText )
{
var regEx = /<[^>]*>/g;
return strText.replace(regEx, "");
}
Nach dem Login kopieren

Jetzt zurück zu VBScript, für Scripting Engine 5.0 oder höher (dies kann durch Aufruf erfolgen ScriptEngineMajorVersion und ScriptEngineMinorVersion (Funktion zum Überprüfen der Version) können wir auch das RegExp-Objekt verwenden:

Function RemoveHTML( strText )
Dim RegEx
Set RegEx = New RegExp
RegEx.Pattern = "<[^>]*>"
RegEx.Global = True
RemoveHTML = RegEx.Replace(strText, "")
End Function
Nach dem Login kopieren

Wenn keine regulären Ausdrücke verwendet werden, kann die folgende Funktion denselben Zweck erreichen:

Function RemoveHTML( strText )
Dim nPos1
Dim nPos2
nPos1 = InStr(strText, "<")
Do While nPos1 > 0
nPos2 = InStr(nPos1 + 1, strText, ">")
If nPos2 > 0 Then
strText = Left(strText, nPos1 - 1) & Mid(strText, nPos2 + 1)
Else
Exit Do
End If
nPos1 = InStr(strText, "<")
Loop
RemoveHTML = strText
End Function
Nach dem Login kopieren

Obwohl die oben genannten Methoden die HTML-Tags in entfernen können Die Klammern, diese Methoden Es gibt folgende Probleme:

Zunächst werden alle spitzen Klammern im Text entfernt, die kein HTML darstellen, und der Text zwischen den beiden spitzen Klammern wird ebenfalls gelöscht „<“ wird in den Text eingefügt.

Außerdem kann diese Methode nicht steuern, welche HTML-Tags wie

Methode 3: Es gibt viele Nachteile bei der Verwendung von IE oder anderen Tools

:

"It may be desirable to parse HTML files inside a Web server process in response to a browser page request. However, the WebBrowser control, DHTML Editing Control, MSHTML, and other Internet Explorer components may not function properly in an Active Server Pages (ASP) page or other application run in a Web server application." (http://support.microsoft.com/support/kb/articles/Q244/0/85.ASP?LN=EN-US&SD=gn&FR=0)
Nach dem Login kopieren

Methode 4: VBScript

Die folgenden Funktionen können auf bestimmte HTML-Tags beschränkt werden

Einführung:

Zur Steuerung Um dies zu erreichen, können Sie die Liste der gelöschten Tags an die TAGLIST-Konstante übergeben. Um beispielsweise alle -Tags beizubehalten, löschen Sie B aus der TAGLIST-Konstante . Jedes Tag muss von „;“ umschlossen sein.

Das Start-Tag und das End-Tag werden gelöscht, z. B. „“ Wenn das Tag sowohl in der TAGLIST- als auch in der BLOCKTAGLIST-Konstante enthalten ist, werden das Start-Tag und das Schluss-Tag gelöscht.

Ein Tag ohne Schluss-Tag gilt nicht als HTML-Tag und sein Inhalt wird nicht gelöscht.

Wenn es sich um ein Block-Tag handelt Hat kein End-Tag, wird der gesamte Inhalt von diesem Tag bis zum Ende des Textes gelöscht

Wenn das Zeichen nach „