Autor Zpráva
johndoe
Profil
ahoj, jak prosím napsat reg. výraz pro náhradu části stringu "bg_****" (hvezdicky znamenaji libovolny znak [a-zA-Z] o libovolnem poctu znaku, nasledovany mezerou.
Tuto část řetězce chci nahradit jinou

konkrétně např. : string = "tx_red bg_grey cursour_pointer txs_10"
chci nahradit "bg_grey" řetězcem "bg_red", aby vše ostatní bylo zachováno.

tedy string.replace("hledaný regukární výraz","bg_red")


("bg_grey" je pouze příklad, může tam být "bg_green","bg_lightyellow" etc .. , to "bg_" je vždy stejné ... )


díky
k
Profil *
$co=array("/bg_red/","/bg_yellow/");
$cim=array("bg_green","bg_black");
preg_replace($co, $cim, $text);
johndoe
Profil
diky za reakci,
tohle by fungovalo, ale to $co je tezko tezko nadefinovatelne, protoze ma nedefinovany pocet prvku , promenny pro kazde nacteni skriptu ...

jinak to potrebuju Javascriptem, ne PHPckem
Retal
Profil
A aby to chytalo všechny bg_***, tak
preg_replace('/bg_[a-zA-Z]+/', 'bg_red', $text);
Retal
Profil
Aha, jsme v JS. V tom případě
myString = myString.replace(/bg_[a-zA-Z]+/g, "bg_red")

johndoe
Profil
díky, to je ono !
můžu prosit ještě malé vysvětlení toho RV, já to snad nikdy nepochopím :(
hlavně ty / a co je to g na konci ? díky moc
peta
Profil
http://www.volny.cz/peter.mlich/www.htm#mssub19
visibone je vyborna literatura
/g je parametr global, cili, ze neskonci u prvni shody
Toto téma je uzamčeno. Odpověď nelze zaslat.

0