Calocybe: RegExp

Beitrag lesen

Hi Hartmut!

var Suchwort = 'Test';
var Reg = eval("/" + Suchwort + "/i");

Alternative: var Reg = new RegExp(Suchwort, "i");
(http://developer.netscape.com/docs/manuals/js/client/jsref/regexp.htm)

var Reg = eval("/\b" + Suchwort + "\b/");

Du schreibst hier in einem String \b. Ein \ im String hat aber ne Sonderbedeutung, die das darauffolgende Zeichen spezifiziert. So kann man z.B. mit \n einen Zeilenumbruch in den String einfuegen ("Eine Zeile\nNaechste Zeile). \b steht fuer ein Backspace ([link:http://developer.netscape.com/docs/manuals/js/client/jsguide/ident.htm#1008368).

Du musst daher den Backslash escapen, damit er an das eval() uebergeben wird. Das geschieht mit einem weiteren Backslash.

var Reg = eval("/\b" + Suchwort + "\b/");
sollte funktionieren.

Calocybe