12

次の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. 画像.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 行目で、[] で囲まれた 2 つの文字列を分離したいということです。現時点では、行全体を一致として扱っています。

4

1 に答える 1

19

貪欲さを変更するには、正規表現を変更する必要があります ( に注意してください.*?)。

\[.*?(\.jpg|\.png|\.gif|\.bmp|\.jpeg).*?\]
于 2012-05-09T12:51:02.717 に答える