Murphy's World @ homeserver holyghost alias dyndns.murphys-world.de | |||
| START
Projekt Murphy's CMSmini
JavaScript TIPPS & TRICKS
GeoCaching
NEWS
TERMINE
FUNSTUFF
LINKS
VIP-BEREICH
KONTAKT
IMPRESSUM
|
JavaScript Tipps & Tricks |
||
| str | = der zu bereinigende String |
function trim(str) {
str+="";
c=str.charAt(0);
while(c==" "||c=="\t"||c=="\n"||c=="\f"||c=="\r") {
str=str.substring(1,str.length);
c=str.charAt(0);
}
c=str.charAt(str.length-1);
while(c==" "||c=="\t"||c=="\n"||c=="\f"||c=="\r") {
str=str.substring(0,str.length-1);
c=str.charAt(str.length-1);
}
return str;
}
function ltrim(str) {
str+="";
c=str.charAt(0);
while(c==" "||c=="\t"||c=="\n"||c=="\f"||c=="\r") {
str=str.substring(1,str.length);
c=str.charAt(0);
}
return str;
}
function rtrim(str) {
str+="";
c=str.charAt(str.length-1);
while(c==" "||c=="\t"||c=="\n"||c=="\f"||c=="\r") {
str=str.substring(0,str.length-1);
c=str.charAt(str.length-1);
}
return str;
}
Die Ersetzung weiterer Zeichen ist durch Ergänzung der Schleifenbedingungen möglich:
c==unescape("%00") zum Ersetzen von NUL-Bytes (Bytewert 0); wie bei den originalen PHP-Funktionen
c==unescape("%A0") zum Ersetzen von geschützten Leerzeichen (Bytewert 160);
Für die trim()-Funktion sähe die vollständige Bedingung beispielsweise so aus:
(c==" "||c=="\t"||c=="\n"||c=="\f"||c=="\r"||unescape("%00")||unescape("%A0"))
function trim(str) {
if(typeof(str)=="string") return str.replace(/^\s+|\s+$/g,"");
else return str;
}
function ltrim(str) {
if(typeof(str)=="string") return str.replace(/^\s+/,"");
else return str;
}
function rtrim(str) {
if(typeof(str)=="string") return str.replace(/\s+$/,"");
else return str;
}
Die Ersetzung weiterer Zeichen ist durch Ergänzung der Suchmuster möglich:
\x00 zum Ersetzen von NUL-Bytes (Bytewert 0); wie bei den originalen PHP-Funktionen
\xA0 zum Ersetzen von geschützten Leerzeichen (Bytewert 160); nur MSIE, bei anderen Browsern in \s enthalten
Für die trim()-Funktion sähe der reguläre Ausdruck beispielsweise so aus:
str.replace(/^[\s\x00\xA0]+|[\s\x00\xA0]+$/g,"")
Anders als bei den Funktionen ltrim() und rtrim() muss bei der trim()-Funktion im regulären Ausdruck das Flag g für gobal suchen (= alle Vorkommen finden) gesetzt werden, sonst würde bei Strings mit Whitespaces am Anfang nach dem Entfernen dieser Zeichen gestoppt werden. Um auch die Whitespaces am Ende entfernen zu können, wird der reguläre Ausdruck durch das Flag angewiesen, nicht nur eine sondern alle möglichen Ersetzungen durchzuführen.
<script type="text/javascript">
alert (
"###" + trim (" TRIM ") + "###\n" +
"###" + ltrim (" LTRIM ") + "###\n" +
"###" + rtrim (" RTRIM ") + "###\n" );
</script>
###TRIM### ###LTRIM ### ### RTRIM###
Die auf dieser Seite notierten Scripte ltrim(), rtrim() und trim() sind Public Domain.
Zurück zur JavaScript Funktionsübersicht
© 2026 Murphy's World Alle Rechte vorbehalten Impressum