Problem
I would like to turn the following:
<div>this is a $test</div>
into
<div>this is a <div>$test</div></div>
currently I have
var regexp = new RegExp('$([^\s]*)','g'),
html = '<div>this is a $test</div>',
matched = html.match(regexp)[0]
if (matched){
html = html.replace(match, '<div>' + match + '</div>')
}
which works, but is there a more concise way of doing this?
Solution
Sure, use String.replace. As an added bonus, it doesn’t fail when there is no match:
'<div>this is a $test</div>'.replace(/($w+)/g, '<div>$1</div>')