正则表达式在同一行上有多个匹配项

Phi*_*ffy 8 javascript regex

我有以下JavaScript正则表达式

用于http://regexpal.com/

\[.*(\.jpg|\.png|\.gif|\.bmp|\.jpeg).*\]

在jQuery代码中使用 -

post.html().match(/\[.*(\.jpg|\.png|\.gif|\.bmp|\.jpeg).*\]/g);

这是我正在使用的示例数据

  1. [CID:image001.jpg@01CD2DC8.704399C0]
  2. S [CID:image001.png@01CD2DC8.704399C0] <
  3. image.jpg的
  4. [CID:image002.jpg@01CD2DC8.704399C0]
  5. [CID:image002.exe@01CD2DC8.704399C0]
  6. [CID:image002.gif@01CD2DC8.704399C0]
  7. [[cid:image001.jpg@01CD2DE6.9802A2D0]

    [cid:image002.png@01CD2DE6.9802A2D0]]
  8. test.gif

我的问题是在第7行,我希望[]中包含的两个字符串是分开的,此时它将整行视为匹配,

KAR*_*ván 11

你需要修改你的正则表达式来改变贪婪(注意.*?):

\[.*?(\.jpg|\.png|\.gif|\.bmp|\.jpeg).*?\]
Run Code Online (Sandbox Code Playgroud)