使用這里的例子
<img src="site.com/player_photos_big_2014/11247_thumb.jpg" class="articlepicture">
<img src="site.com/player_photos_big_2014/5666_thumb.jpg" >
<img src="site.com/player_photos_big_2014/76893_thumb.jpg" >
我想得到 "11247" 、 "5666" 、 "76893" 的數字
試過了,沒有用,影像縮略圖名稱不同,可能是 3 到 5 個數字
var test= $('.articlepicture').attr('src')
test.match(/player_photos_big_2014/(. ?)_thumb.jpg)[1]
uj5u.com熱心網友回復:
嘗試使用split("/").at(-1)獲取最后一個字串(11247_thumb.jpg),然后使用replace("_thumb.jpg", "")僅獲取數字作為字串,最后;如果你想要它作為一個int,使用parseInt()或Number()
所有組合看起來應該是這樣的:
let playerNum = parseInt($(".articlepicture").attr("src").split("/").at(-1).replace("_thumb.jpg", ""))
console.log(playerNum)
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<img src="site.com/player_photos_big_2014/11247_thumb.jpg" class="articlepicture">
當然,這只有在檔案名一致的情況下才有效!
uj5u.com熱心網友回復:
正則運算式\/(\d )匹配/123456部分并(\d )提取數字部分
const result = [];
document.querySelectorAll('img.articlepicture').forEach(img => {
const n = (img.getAttribute('src').match(/\/(\d ).*\.jpg$/) || ['',''])[1];
result.push(n);
});
console.log(result);
<img src="site.com/player_photos_big_2014/11247_thumb.jpg" class="articlepicture">
<img src="site.com/player_photos_big_2014/5666_thumb.jpg" class="articlepicture">
<img src="site.com/player_photos_big_2014/76893_thumb.jpg" class="articlepicture">
uj5u.com熱心網友回復:
你能試試這個嗎?
test.match(\/player_photos_big_2014\/(. ?)_thumb\.jpg)[1]
某些字符必須轉義
此外,您可以使用這樣的一些網站測驗您的正則運算式,它們真的很酷:https : //regex101.com
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/334552.html
