function bbcode(text) { /\[b\](.*?)\[\/b\]/, /\[i\](.*?)\[\/i\]/, /\[u\](.*?)\[\/u\]/, /\[color=([a-zA-Z]+)\](.*?)\[\/color\]/, /\[size=([0-9]+)\](.*?)\[\/size\]/, /\[url=([\w]+?:\/\/[^ \\"\n\r\t<]*?)\](.*?)\[\/url\]/ ); replace = new Array( '<font style="font-weight: bold;">$1</font>', '<font style="font-style: italic;">$1</font>', '<font style="text-decoration: underline;">$1</font>', '<font style="color: $1;">$2</font>', '<font style="font-size: $1px;">$2</font>', '<a href=\"$1\" target=\"blank\">$2</a>'); for(i = 0; i < bbcode.length; i++) { text = text.replace(bbcode[i],replace[i]); } text = text.replace(/\n/g,'<br />'); return text; }
a mianowicie funkcja ta zamienia tylko pierwszy napotkany bbcode a reszte zostawia...
pokaze obrazowo
[`b]asdasd[/b] [`size=30]asdasdasd[/size] [`b]asdasd[/b] <- tego ostatniego b juz nie zamieni
jest cos w javascript takiego jak replace_all czy cus?