2009-06-26 11 views
7

Nie mogę tego pojąć na przykład po tym, jak nie potrafiłem sobie wyobrazić, jak to by działało na własną rękę.Używanie metody replace() JavaScript z globalnym przełącznikiem na zmiennej

Wszystko, co chcę zrobić, to wziąć ciąg, który został przypisany do wartości, i użyć go jako łańcucha dopasowania zamieniającego dla wszystkich dopasowań.

var replacement = 'i'; 
var text = 'tieiam'; 

text = text.replace(replacement, ''); // 'teiam' 

text = text.replace(/tieiam/g, ''); // 'team' 

Jak używać ich razem?

+0

możliwe duplikat [? Jak przekazać zmienną do wyrażenia regularnego JavaScript] (http://stackoverflow.com/questions/494035/how-do-you-pass-a-variable-to-a-regular-expression-javascript) – fxp

Odpowiedz

20

Co chcesz jest użycie obiektu RegExp:

text = text.replace(new RegExp(replacement, 'g'), ''); 

Simple example of it in action.

+0

Ohydny, ale działa. Dzięki! –

+0

Nie zapomnij o unikaniu znaków specjalnych regexp z ukośnikami odwrotnymi –

Powiązane problemy