Ich starre leer auf diesen Fehler, so hoffe ich hier jemand kann darauf hinweisen, wo ich falsch liege.Syntaxfehler mit Look-Behind-Assertion in Javascript regulären Ausdruck
Diese Funktion den Wert eines Parameters in einem Abfragezeichenfolgeflag mit einem neuen Wert ersetzen soll:
function ReplaceParameter(querystring, key, value) {
var myregexp = new RegExp("(?<="+key+"=).+(?=&)", "i");
return querystring.replace(myregexp, value);
}
Beispiel Nutzung:
var serializedData = "columnsToDisplay=EmployeeId&columnsToDisplay=Name&columnsToDisplay=Birthday&columnsToDisplay=Phone&pageSize=4&columnToSort=EmployeeId&descending=False&page=1&partial=RainbowGridData";
var selectedPage = 17;
serializedData = ReplaceParameter(serializedData, "page", selectedPage);
Ich erhalte eine „Microsoft JScript-Laufzeitfehler: Syntaxfehler in regulären Ausdruck "Fehler." Trog Visual Studio während des Debuggens auf dieser Website.
Jede Idee?
Danke.
Oh ich sehe. Regexbuddy hat mich davor nicht gewarnt ... ;-) danke für die Antwort, es funktioniert. –
FYI ich googelte und Lookaheads sollten in Javascript arbeiten. –
Gute Antwort. Sie sollten den "Wert" wahrscheinlich auch vor dem Platzieren in der Abfragezeichenfolge url-encodieren. – Prestaul