我正在测试正则表达式,我对匹配结果感到好奇,
符号*是greendy,在我的选项中,结果shuld只匹配1个结果, 像下面这样:
<script language=javascript>
ati('#', '../../../UpLoadFile/Product/20101010162153846.jpg', '加厚青色围脖');
}
</script>
<script language=javascript>
ati
但结果不是我所期望的,任何人都可以帮我解释一下,谢谢?
答案 0 :(得分:1)
*
贪婪,但它只匹配\s
,这意味着空白字符。如果您希望将所有内容与ati的最后一次出现匹配,请改为使用.*
。
如果此环境与。换行符不匹配,也许您可以通过匹配(.|\n)*
答案 1 :(得分:1)
它无法与您想要的匹配,因为您只匹配它的开头。
当你在两个标记之间寻找任意的东西时,贪婪会抓住你,你会得到第一个和最后一个之间的所有内容,即
/<p>.*<\/p>/
通常,当您这样做时,您需要所有p
个元素。但是如果没有不合格的.*?
或U
标志,您将获得第一个和最后一个实例之间的所有内容。