我正在使用下面的 javascript 代码尝试在下面的 html 标记中提取数字,而不是给出所有匹配项,尽管我在正则表达式中使用了修饰符,gallery-entry_
但它只返回第一个匹配项。g
知道为什么吗?
<script type="text/javascript">
var _gallery = jQuery('ul.gallery').html();
var _pat = /"gallery-entry_([0-9]+)"/gim;
var _items = _pat.exec(_gallery);
alert('str='+_items[0]); // shows str="gallery-entry_1"
alert('item #1='+_items[1]); // shows item #1=1
alert('total='+_items.length); // shows total=2
</script>
这是标记:
<ul class="gallery">
<li id="gallery-entry_1"><a href="" title=""><img src="" width="116" height="116" alt=""></a></li>
<li id="gallery-entry_2"><a href="" title=""><img src="" width="116" height="116" alt=""></a></li>
<li id="gallery-entry_6"><a href="" title=""><img src="" width="116" height="116" alt=""></a></li>
<li id="gallery-entry_10"><a href="" title=""><img src="" width="116" height="116" alt=""></a></li>
<li id="gallery-entry_14"><a href="" title=""><img src="" width="116" height="116" alt=""></a></li>
<li id="gallery-entry_22"><a href="" title=""><img src="" width="116" height="116" alt=""></a></li>
<li id="gallery-entry_30"><a href="" title=""><img src="" width="116" height="116" alt=""></a></li>
<li id="gallery-entry_31"><a href="" title=""><img src="" width="116" height="116" alt=""></a></li>
</ul>