Empfohlen: ASP 3.0 Erweiterte Programmierung (32) 7.2.4 Client -Skriptfehler Bisher haben wir die Fehler von ASP erfahren. ASP wird jedoch auch häufig verwendet, um Webseiten mit Client -Skripten zu erstellen. Wenn das <Skript> -Element, das den Client -Code enthält, nicht auf runat = server eingestellt ist
Das letzte Mal haben wir darüber gesprochen, wie regelmäßige Ausdrucksobjekte verwendet werden, um die Überprüfung verschiedener Daten in ASP zu erreichen. Der Artikel beschreibt die leistungsstarken Funktionen regulärer Ausdrucksobjekte. Schauen wir uns als nächstes andere Funktionen regulärer Ausdrucksobjekte an. Wenn wir im Internet surfen, insbesondere beim Surfen verschiedener Foren, sehen wir oft das Wort UBB -Code. Was ist UBB -Code? UBB -Code ist eine Variante von HTML, einem speziellen Tag, das von Ultimate Bulletin Board verwendet wird (ein BBS -Programm im Ausland und viele Orte in China verwenden dieses Programm). Um die unbeabsichtigten oder absichtlichen Angriffe der Benutzer im Forum per HTML -Code zu vermeiden, blockieren verschiedene Foren im Grunde genommen den HTML -Code. Um das Forum farbenfroher zu gestalten, öffnet das Forum einige benutzerdefinierte Tag -Tags entsprechend, ähnlich wie die Tags in HTML, wie z. B. [url], [/url], [rot], [/red]. Auf diese Weise können einige Funktionen mit dem HTML -Code entsprechen, und das Forum kann von böswilligen Angriffen vermieden werden. Diese benutzerdefinierten Tags sind allgemein als UBB -Code bekannt. Gegenwärtig unterstützen alle modischen Foren den UBB -Code, wie das Forum of Dynamic Technology Network uBB -Code sehr gut unterstützt. Lassen Sie uns nun reguläre Ausdrucksobjekte verwenden, um unseren eigenen farbenfrohen UBB -Code zu implementieren.
Zunächst muss Ihre Serverseite (IIS oder PWS) eine VBSCript5.0 -Support -Umgebung haben, was im Allgemeinen bedeutet, dass Sie nach IE5.x bereits reguläre Ausdrucksobjekte unterstützen können.
In Bezug auf gängige Methoden und Attributnutzungsmethoden der regulären Expressionsobjekte habe ich bereits in diesem Artikel über die Verwendung regulärer Expressionsobjekte zur Implementierung der Datenüberprüfung in ASP eingeführt. Sie können auf diesen Artikel verweisen. Hier werde ich hauptsächlich die Hauptmethode für reguläre Expressionsobjekte einführen, die den UBB -Code implementiert: Ersatz () Methode.
Die Syntax der Ersatzmethode lautet wie folgt:
Die Syntax der Ersatzmethode lautet wie folgt:
beschreiben
Ersetzen Sie den Text, der in regelmäßiger Ausdrucksuche gefunden wurde.
Grammatik
Object.Replace (String1, String2)
Die Syntax der Ersatzmethode enthält die folgenden Teile:
Teilbeschreibung
Objekt erforderlich. Immer der Name eines Regexp -Objekts.
String1 erforderlich. String1 ist die Zeichenfolge, zu der der Textersatz ausgeführt werden soll.
String2 erforderlich. String2 ist eine Ersatztextzeichenfolge.
veranschaulichen
Das tatsächliche Muster des ersetzten Textes wird durch die Mustereigenschaft des Regexp -Objekts eingestellt.
Die Ersatzmethode gibt eine Kopie von String1 zurück, wobei der Text von Regexp.Pattern durch String2 ersetzt wurde. Wenn kein passender Text gefunden wird, wird eine Kopie des ursprünglichen String1 zurückgegeben.
Als nächstes möchten wir bestimmen, welche Art von UBB -Code wir am Ende implementieren möchten? Die UBB -Codefunktionen, die wir diesmal implementieren möchten, sind wie folgt:
URL Hyperlink
Fügen Sie Ihrer Nachricht einen Hyperlink hinzu. Fügen Sie ihn einfach auf folgende Weise ein (UBB -Code ist fett).
[url] www.test.net [/url]
Durch das Einfügen wie oben verbindet der UBB -Code die URL automatisch und stellt sicher, dass der Link geöffnet ist, wenn der Benutzer auf ein neues Fenster klickt.
E -Mail -Links
Fügen Sie Ihrer Nachricht einen E -Mail -Hyperlink hinzu. Befolgen Sie einfach das folgende Beispiel, um sie einzulegen (UBB -Code ist fett.
[E -Mail] [email protected] [/E -Mail]
Einfügen wie oben einfügen, der UBB -Code verlinkt automatisch mit E -Mail.
Zum Bild hinzufügen
Fügen Sie Ihrer Nachricht Bilder hinzu. Befolgen Sie einfach das folgende Beispiel, um sie einzufügen (UBB -Code ist fett).
[IMG] http://www.test.net/test.gif [/img]
Im obigen Beispiel lässt der UBB -Code das Bild automatisch in Ihrer Nachricht angezeigt werden.
Andere Tags
Es gibt auch diese Tags, u kleiner H1 H2 H3 H4 H5 H6 Strike Blink Sub sup del pre Big, die Funktionen dieser Tags entsprechen denen von HTML
[H1] Dies ist ein Titel [/h1]
[/Tag] ist ein Muss
Lassen Sie einen Absatz des Textes in Farbe angezeigt werden
Dies ist ein spezielles Tag
[#ff0000] Ein rotes Wort [/#]
#Der hexadezimaler RGB -Code der Farbe, die gefolgt von rot ist, ist ff0000, grün ist 00ff00 und Blau 0000ff ist 0000ff
In Bezug auf die Implementierungsmethoden verschiedener anderer UBB -Codes, die den oben genannten ähnlich sind, werden wir die obige UBB -Code -Implementierung als Beispiel verwenden, um die leistungsstarken Funktionen regulärer Ausdrucksobjekte zu erklären.
Wir verwenden hauptsächlich die Ersatz () -Methode und die entsprechende Vorlage, um die UBB -Codefunktion einfach zu implementieren. Hier verwenden wir hauptsächlich zwei von uns selbst geschriebene Funktionen, die erste Funktion ersetzt. Die von dieser Funktion implementierte Funktion dient hauptsächlich dazu, das reguläre Expressionsobjekt zu verkapulieren und drei Eingabeparameter bereitzustellen:
Patrn
Dieser Parameter übergibt eine übereinstimmende Vorlage für UBB -Code
Str
Dieser Parameter übergibt eine Zeichenfolge, die im UBB -Modus verarbeitet wird, z. B. im Artikelinhalt.
Repl
Dieser Parameter übergibt die HTML -Codesprache, die mit ihm entspricht.
Der Austrittsparameter der Austauschestfunktion ist eine Zeichenfolge, die durch Vorlagenanpassung ersetzt wird.
Der Austauschsteuer -Funktionscode lautet wie folgt:
Funktion Ersatzsest (Patrn, str, replstr)
Dim Regex, Str1 'erstellt eine Variable.
STR1 = Trim (str)
Setzen Sie Regex = New Regexp 'Erstellen Sie regelmäßige Ausdruck.
regex.pattern = patrn 'set modus.
regex.ignorecase = true 'setzen Sie, ob es sich um fallempfindlich handelt.
Ersetztest = regex.replace (str1, replstr) 'als Ersatz.
Setzen Sie Regex = nichts 'Zerstören Sie das reguläre Ausdrucksobjekt
Endfunktion
Die zweite Funktion, die wir schreiben möchten, ist: UBB () -Funktion. Die von dieser Funktion implementierte Funktion besteht darin, einen Textstück in UBB -Funktionen umzuwandeln. Diese Funktion hat nur einen Eintragsparameter:
Str
Dieser Parameter übergibt die zu verarbeitende Zeichenfolge.
Der Exportparameter der UBB -Funktion ist eine von UBB -Code verarbeitete Zeichenfolge.
Der Code der UBB -Funktion lautet wie folgt: (im Programm stehen detaillierte Kommentareinformationen)
Funktion UBB (STR)
Dim i, temp 'Variable deklarieren
I = 1
temp =
Tun Sie, während Instrum
Wenn Trim (temp) = dann
temp = ersatzest (/[i]) (/s) (/[/i]), str, <i> $ 2 </i>) 'Dokumentevorlage Matching und Austausch von UBB -Code
anders
temp = ersatzETest ((/[i]) (/s) (/[/i]), temp, <i> $ 2 </i>) 'Dokumentvorlagenvorlagen -Übereinstimmung und Ersatz von UBB -Code
Ende wenn
temp = ersatzETest ((/[b]) (/s) (/[/b]), temp, <b> $ 2 </b>) 'Vergleiche Vorlagenübereinstimmung und Austausch von UBB -Code
temp = ersatzest (/[big]) (/s) (/[/big]), temp, <big> $ 2 </big>) 'Dokumentenvorlage Matching und Austausch von UBB -Code
temp = ersatzETest ((/[streik]) (/s) (/[/streik]), temp, <streik> $ 2 </Strike>) 'Vorlagenübereinstimmung und Austausch von UBB -Code durchführen
temp = ersatzETest ((/[sub]) (/s) (/[/sub]), temp, <sub> $ 2 </sub>) 'Vorlagenübereinstimmung und Austausch von UBB -Code durchführen
temp = ersatzest (/[sup]) (/s) (/[/sup]), temp, <sup> $ 2 </sup>)
temp = ersatzest (/[pre]) (/s) (/[/pre]), temp, <pre> $ 2 </pre>)
temp = ersatzest (/[u]) (/s) (/[/u]), temp, <u> $ 2 </u>)
temp = ersatzest (/[klein]) (/s) (/[/small]), temp, <klein> $ 2 </small>)
temp = ersatzest (/[h1]) (/s) (/[/h1]), temp, <h1> $ 2 </h1>)
temp = ersatzest ((/[h2]) (/s) (/[/h2]), temp, <h2> $ 2 </h2>)
temp = ersatzest (/[h3]) (/s) (/[/h3]), temp, <h3> $ 2 </h3>)
temp = ersatzest (/[h4]) (/s) (/[/h4]), temp, <h4> $ 2 </h4>)
temp = ersatzest (/[h5]) (/s) (/[/h5]), temp, <h5> $ 2 </h5>)
temp = ersatzest (/[h6]) (/s) (/[/h6]), temp, <h6> $ 2 </h6>)
temp = ersatzest (/[rot]) (/s) (/[/rot]), temp, <font color = rot> $ 2 </font>)
'Dies kann eine neue UBB -Code -Implementierungsvorlage hinzufügen
temp = ersatzest (/[E -Mail]) (/s) (/[/E -Mail]), Temp, <a href = mailto: $ 2 target = _top> $ 2 </a>)
temp = ersatzest (/[img]) (/s) (/[/img]), temp, <img src = $ 2>)
temp = ersatzest (/[url]) (/s) (/[/url]), temp, <a href = $ 2 target = _top> $ 2 </a>)
temp = ersatzest (/[#(/s)]) (/s) (/[/#]), temp, <font color = $ 1> $ 3 </font>) 'Vorlagenübereinstimmung und Austausch von UBB -Code durchführen
I = I 1
Schleife
Wenn Trim (temp) <> dann
Ubb = temp 'übergibt die vom UBB -Code filtrierte Zeichenfolge ohnmächtig
anders
Ubb = str 'über die von UBB -Code gefilterte Zeichenfolge übergeben
Ende wenn
Endfunktion
Im Funktionscode UBB sehen wir 1, $ 2, 3 $ usw. Diese Zeichenfolgen sind Pronomen für passende Zeichenfolgen. Genau wie bei einigen Makros können wir sie verwenden, um die passenden Zeichenfolgen zu ersetzen, ohne das Programm zu verwenden, um die Position der passenden Zeichenfolge zu erinnern. Durch diese beiden einfachen Funktionsaufrufe haben wir die UBB -Codefunktion implementiert. Wie wäre es damit, es ist sehr einfach.
Auf diese Weise müssen wir nur die UBB -Funktion aufrufen, wenn wir den Artikel anzeigen, den Artikelinhalt verarbeiten und dann im Browser anzeigen und die UBB -Codefunktion des Forums erkennen. Darüber hinaus können Sie die erforderliche UBB -Code -Matching -Ersatzvorlage in der UBB -Funktion einfach hinzufügen, damit Sie die Funktionen Ihres UBB -Code kontinuierlich erweitern können.
(Die oben genannten Programme werden alle in der englischen Version SP5, IIS4.0, IE5.x, ausgeführt und übergeben.
Teilen: ASP steuert 6 sehr klassische Codes für die XML -Datenbank Nr. 1-Erstellen Sie eine XML-Datenbankdaten.xml <xml Version = 1.0?> <datensätze> <datensatz