Vb1988: JavaScript: Smiley blocken (UTF-8/UTF-16)

Beitrag lesen

dedlfix wrote: Deshalb wäre .. die Lösung deines Problems, auf der Zeichen-Ebene die ungewünschten Zeichen zu ersetzen.

Habe die javascript "replace" -Funktion in die *.htm Seite eingebaut, und nun werden die Smileys erfolgreich geblockt!

Der Parameter /ig bedeutet ignoriere Gross- und Kleinschreibung(/i) und der (/g) -Parameter führt ein "globales Ersetzen" durch.

MyChat.prototype.addChatMessage = function(message)
{
//alert(message.name+': '+message.comment);        
var jetzt = message.comment.replace(/[^a-z0-9äöüÄÖÜß !?:,.]/ig,'');
if (Form1) Form1.Callback(jetzt);
};

Die von mir als "erlaubt" definierten Zeichen sind:

a-z A-Z 0-9 äöüÄÖÜß SPACE !?:,.

-Lässt man das Leer-Zeichen hinter "ß" weg, also

[^a-z0-9äöüÄÖÜß!?:,.]
statt
[^a-z0-9äöüÄÖÜß !?:,.]

..dann werden alle Wörter im Chat quasi "zusammengebacken", und der Chat-Text lässt sich nicht mehr gut lesen.

Was würde passieren, wenn man den "global" Parameter weglässt, und was würde passieren wenn man das Hochzeichen(^) vor dem "a" weglässt?