Regex replace
Bobby
- javascript
Moin
hab nen kleines Problem mit JS-Regex
Die Adresse einer Seite heißt z.B.
http://example.com/edit.php?mode=update&id=52&bildright1=zufall
Ich möchte etwas ersetzen:
function replace_url(string)
{
var newhref=document.location.href.replace(string,'');
alert(newhref);
}
<a href="javascript:void(0)" onclick="replace_url('&bildright1=([^&].*)')">Testlink</a>
Leider wird mir da die original-URL ausgegeben und nicht die Ersetzte. Wo liegt mein Fehler?
Gruß Bobby
Moin
http://example.com/edit.php?mode=update&id=52&bildright1=zufall
Ich möchte etwas ersetzen:
Achso: Ergebnis soll http://example.com/edit.php?mode=update&id=52 sein
Gruß Bobby
Moin
function replace_url(string)
{
var newhref=document.location.href.replace(string,'');
alert(newhref);
}
>
> `<a href="javascript:void(0)" onclick="replace_url('&bildright1=([^&].*)')">Testlink</a>`{:.language-html}
OK... gelöst
`[code lang=html]<a href="javascript:void(0)" onclick="replace_url(/(&bildright1=)+([^&].*)/)">Testlink</a>`{:.language-html}[/code]
das funktioniert.
Gruß Bobby
--
-> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
### Henry L. Mencken ###
-> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
## Viktor Frankl ###
ie:{ br:> fl:{ va:} ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)
Hi,
<a href="javascript:void(0)" onclick="replace_url('&bildright1=([^&].*)')">Testlink</a>
OK... gelöst
Bist Du sicher?
Sollen weitere URL-Parameter nach dem bildright stehen, tatsächlich entfernt werden?
Oder wolltest Du eigentlich [^&]* (beliebig viele Nicht-Ampersand-Zeichen) statt [^&].* (ein Nicht-Ampersand-Zeichen gefolgt von beliebig vielen beliebigen Zeichen) schreiben?
cu,
Andreas
Moin
Oder wolltest Du eigentlich [^&]* (beliebig viele Nicht-Ampersand-Zeichen) statt [^&].* (ein Nicht-Ampersand-Zeichen gefolgt von beliebig vielen beliebigen Zeichen) schreiben?
Hab ich auch gerade gemerkt und wollte nachfragen. ;) Danke für den Hinweis... Es sollen natürlich alle nachfolgenden Parameter stehen bleiben.
Und nun funktionierts wirklich ;)
Gruß Bobby