javascript - 正则表达式中的 encodeURIComponent

标签 javascript jquery regex replace encode

我有更多这样的 DIV:

<span class="date">Fri November 9, 2012</span>

所有这些都在一个变量中。 示例:

var = '
...<span class="date">Fri November 9, 2012</span>...
...<span class="date">Fri November 9, 2012</span>...
';

我尝试用包含该日期的图像替换每个日期。

我有这条线,但这行不通:

ver = ver.replace(/<span class="date">(.*)<\/span>/g,'<span class="date"><img src="generateLink.php?nr='+encodeURIComponent($1)+'" /></span>');

我的问题是:我不能在 regex 中使用 encodeURIComponent 吗?

最佳答案

使用回调函数替换

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
});

关于javascript - 正则表达式中的 encodeURIComponent,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13306264/

相关文章:

javascript - 哪个 jquery 事件可以帮助我更好(点击,悬停?)

javascript - Angular 2在点击时增加动画边距

java - 从文件系统读取二进制文件作为 BLOB 以在 rhino 中使用 javascript

javascript - 如何从 javascript 向 asp 页面传递值?

php - 浏览器是否支持 ajax 加载的登录表单的自动完成?

php - 使用 jquery $.ajax 发送鼠标位置

java - 如何创建正则表达式来匹配Java中的单词结尾?

ios - 从第一个空格拆分 NSString

javascript - 正则表达式替换 HTML 标签

javascript - Uncaught SyntaxError : Invalid regular expression flags - but regex101. com 说我的正则表达式没问题?