Javascript regex中的encodeuric组件
我有更多这样的div:Javascript regex中的encodeuric组件,javascript,jquery,regex,replace,encode,Javascript,Jquery,Regex,Replace,Encode,我有更多这样的div: <span class="date">Fri November 9, 2012</span> 所有这些都在一个var中。 例如: 我尝试用包含此日期的图像替换每个日期 我有这一行,但这行不通: ver = ver.replace(/<span class="date">(.*)<\/span>/g,'<span class="date"><img src="generateLink.php?nr='+en
<span class="date">Fri November 9, 2012</span>
所有这些都在一个var中。
例如:
我尝试用包含此日期的图像替换每个日期
我有这一行,但这行不通:
ver = ver.replace(/<span class="date">(.*)<\/span>/g,'<span class="date"><img src="generateLink.php?nr='+encodeURIComponent($1)+'" /></span>');
我的问题是:我不能在regex中使用encodeURIComponent?使用replace with callback函数
ver = ver.replace(/<span class="date">([^<]*)<\/span>/g,
function($0,$1) {
return '<span class="date"><img src="generateLink.php?nr='+encodeURIComponent($1)+'" /></span>'
});
而且可以更简单
ver = ver.replace(/(<span class="date">)([^<]*)(<\/span>)/g,
function($0,$1,$2,$3) {
return $1+'<img src="generateLink.php?nr='+encodeURIComponent($2)+'" />'+$3
});
使用replace-with回调函数
ver = ver.replace(/<span class="date">([^<]*)<\/span>/g,
function($0,$1) {
return '<span class="date"><img src="generateLink.php?nr='+encodeURIComponent($1)+'" /></span>'
});
而且可以更简单
ver = ver.replace(/(<span class="date">)([^<]*)(<\/span>)/g,
function($0,$1,$2,$3) {
return $1+'<img src="generateLink.php?nr='+encodeURIComponent($2)+'" />'+$3
});
要执行此操作,您必须先匹配,然后替换为匹配结果。此操作不需要编码。要执行此操作,您必须先匹配,然后替换为匹配结果。此操作不需要编码。注意:最好使用[^注意:最好使用[^