javascript - 如何使用 jquery 将 img src 字符串从以 _m 结尾更改为 _t 一组图像

标签 javascript jquery regex

我希望在正确的方向上得到很好的插入我想改变我的图像源字符串的结尾......我希望我的措辞是正确的。

无论如何,我当前的 src 正在阅读:

<img src="something/something/12345_m.jpg" />

我想把它改成:

<img src="something/something/12345_t.jpg" />

有什么想法吗...谢谢!

最佳答案

这个比较安全:

$('img').each(function () {
    var src = $(this).attr('src');
    $(this).attr('src', src.replace(/_m(\.[^.]+)?$/, '_t$1');
});

否则,在使用 eKek0 的答案时,您可能会冒着像 /bat_man/images/oh_my_god_m.png 这样的 URL 最终变成 /bat_tan/images/oh_my_god_m.png 的风险。


正则表达式/_m(\.[^.]+)?$/的解释:

  • /.../ 只是图案边框。
  • _m 匹配文字 _m
  • (...) 匹配分组,结果中第一个以$1结尾。
  • \. 匹配文字 .。因为 . 是正则表达式中的一个特殊字符,它被 \.
  • 转义。
  • [...] 表示一组字符。
  • ^. 匹配所有文字 .。因为它在一个组内,所以不需要转义。
  • + 匹配一个或多个字符。
  • ? 前一组是可选的(对于没有文件扩展名的情况)。
  • $ 匹配必须出现在字符串的末尾(因此不在中间左右)。

关于javascript - 如何使用 jquery 将 img src 字符串从以 _m 结尾更改为 _t 一组图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2792495/

相关文章:

javascript - Internet Explorer 11 将元素附加到 DOM 的速度非常慢

regex - 在 Bash 中替换斜线

android - 从字符串中提取 4 位数字的正则表达式 - Android

javascript - 在 Retina 显示屏上将 HTML 渲染到 Canvas

javascript - GraphQL 联合和冲突类型

javascript - 为什么子组件的状态不断清除?

javascript - 基于日期合并 Json 数组

php - 使用对 Angular 线缩进显示段落的文本

asp.net - jquery 下拉选择器 AutoPostback

ruby - Ruby 中的正则表达式用于字符串中的多个拆分