molily: Problem mit Funktion innerhalb Replace Funktion?

Beitrag lesen

mstr = mstr.replace(/(<input.*?)(<?.*??>)(.*?>)/ig,"$1" + dummyret($2) + "$3");

Hier wird dummyret nur einmal aufgerufen, und zwar in dem Moment, wo diese Zeile ausgeführt wird. Der Rückgabewert wird dann mit "$1" + rückgabewert + "$3" verknüpft, heraus kommt ein fester String und der wird dann als Parameter an replace() übergeben.
Was du als Ersetzungsfunktion willst, wird überhaupt nicht mehrfach aufgerufen. Wenn du das willst, musst du replace ein Funktionsobjekt und kein String übergeben: string.replace(regexp, funktion)

Diese Funktion bekommt die Teiltreffer als Parameter 2-x. Die kannst du dann bearbeiten und den neuen String zurückgeben:

function dummyret (gesamterString, teiltreffer1, teiltreffer2, teiltreffer3) {
   var neuerteiltreffer2 = [mach was mit teiltreffer2];
   return teiltreffer1 + neuerteiltreffer2 + teiltreffer3;
}

Mathias