Der folgende Beitrag wurde am 13. 01. 2002, 03:42 Uhr von wolli veröffentlicht.
hallo Leute,
vom FTPschock einigermassen erholt :-)
hab schon wieder ein kleines prob.
laut münz kann man mit replace:
var vormals = "Elke Hinz";
var jetzt = vormals.replace(/Hinz/,"Kunz, geb. Hinz");
Zeichen/Wörter ersetzen.
habe folgende Probematik:
lese mit document.URL die komplette URL Zeile aus.
also zB. http://www.wolfgag-mueller.de/
diese kann mit www. oder ohne www. vorkommen.
Jetzt würde ich gerne mit replace http:// und www. und am Ende den /
entfernen.
mit normalen Zeichen klappt das ja, aber bei / oder // gibts ne Fehlermeldung.
hat jemand eine Idee ??
Danke
Gruß
wolli
Der folgende Beitrag wurde am 13. 01. 2002, 07:30 Uhr von NorbertKlein veröffentlicht.
<script type="text/javascript" language="JavaScript">
<!--
url = document.URL;
url = url.replace(/http:\/\//,"");
url = url.replace(/\//,"");
document.write(url);
//-->
</script>
oder
<script type="text/javascript" language="JavaScript">
<!--
url = document.hostname;
document.write(url);
//-->
</script>
Erklärung:
Du musst je einen Backslash(\) vor die Slashes(/) machen, da Slashes u.a. zur Syntax der regulären Ausdrücke gehören, der Browser meint, dass er, wenn du:
url = url.replace(/http:///,"");
angibst, "http:" ersetzen soll. Die zwei restlichen Slashes passen ihm dann nicht, darum die Fehlermeldung.
Setzt du vor den zwei in der Zeichenkette enthaltenen Slashes jeweils einen Backslash:
url = url.replace(/http:\/\//,"");
werden die Slashes zur Zeichenkette hinzugezählt.
Bei url = url.replace(/\//,""); solltest du aber aufpassen, dass keine URLs mit Unterverzeichnissen auftauchen, die werden sonst nämlich unbrauchbar gemacht:
"http://selfhtml.teamone.de/javascript/objekte/" -> "selfhtml.teamone.dejavascriptobjekte"
Um das zu vermeiden, kannst du eigentlich gleich document.hostname verwenden (hätte mir auch früher einfallen können).
Weiterführend:
document.hostname -
http://selfhtml.teamone.de/javascript/objekte/location.htm#hostname
Syntax der regulären Ausdrücke - http://selfhtml.teamone.de/javascript/objekte/regexp.htm
Steuerzeichen bei Zeichenketten -
http://selfhtml.teamone.de/javascript/sprache/notationen.htm#zeichenketten
Gruß
Norbert
Der folgende Beitrag wurde am 13. 01. 2002, 12:31 Uhr von wolli veröffentlicht.
Dankeschön Norbert,
funz einwandfrei :-)
Gruß
Wolli
> <script type="text/javascript" language="JavaScript">
> <!--
> url = document.URL;
> url = url.replace(/http:\/\//,"");
> url = url.replace(/\//,"");
> document.write(url);
> //-->
> </script>
> oder
> <script type="text/javascript" language="JavaScript">
> <!--
> url = document.hostname;
> document.write(url);
> //-->
> </script>
> Erklärung:
> Du musst je einen Backslash(\) vor die Slashes(/) machen, da Slashes u.a. zur Syntax der regulären Ausdrücke gehören, der Browser meint, dass er, wenn du:
> url = url.replace(/http:///,"");
> angibst, "http:" ersetzen soll. Die zwei restlichen Slashes passen ihm dann nicht, darum die Fehlermeldung.
> Setzt du vor den zwei in der Zeichenkette enthaltenen Slashes jeweils einen Backslash:
> url = url.replace(/http:\/\//,"");
> werden die Slashes zur Zeichenkette hinzugezählt.
> Bei url = url.replace(/\//,""); solltest du aber aufpassen, dass keine URLs mit Unterverzeichnissen auftauchen, die werden sonst nämlich unbrauchbar gemacht:
> "http://selfhtml.teamone.de/javascript/objekte/" -> "selfhtml.teamone.dejavascriptobjekte"
> Um das zu vermeiden, kannst du eigentlich gleich document.hostname verwenden (hätte mir auch früher einfallen können).
> Weiterführend:
> document.hostname -
> http://selfhtml.teamone.de/javascript/objekte/location.htm#hostname
> Syntax der regulären Ausdrücke - http://selfhtml.teamone.de/javascript/objekte/regexp.htm
> Steuerzeichen bei Zeichenketten -
> http://selfhtml.teamone.de/javascript/sprache/notationen.htm#zeichenketten
> Gruß
> Norbert
© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4