要在以下字串中计算有几个img的标签内容出现,要要
我用的正则化表达式是:"(){1}"
本来可以匹配2次的,但结果却是一次,这是为什么?
改成这个样子
code="java".+?/>){1}[/code]
这是因为正则表达式的贪婪模式造成的。
var reg = /]+src="[^"]+"[^>]*>/g;
var result = s.match(reg);
[code="javascript"]
var str = '<img src="" smilieid="296" border="0" alt="" />要要<img src="" smilieid="294" border="0" alt="" />'; alert(str.match(/<img[^<]*\/>/gi).length) //如果要包括这种形式 <img ****>**</img>则使用下面这种 //var arr = (str.match(/<img[^<]*(\/|>[\s\S]*?<\/img)>/gi)) alert(arr)[/code]