ЙажаСценарий / Говнокод #10601 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
var pic_jpg = /(\.jpg)$/ig;
var pic_jpeg = /(\.jpeg)$/ig;
var pic_png = /(\.png)$/ig;
var pic_bmp = /(\.bmp)$/ig;
 var a = $("a");
$.each(a, function (i, val) {
		var src = $(val).attr("href");
		if (src !== undefined) {
				if (src.match(pic_jpg)) {
						AppendImage(i, src, 'a');
				}
				if (src.match(pic_jpeg)) {
						AppendImage(i, src, 'a');
				}
				if (src.match(pic_png)) {
						AppendImage(i, src, 'a');
				}
				if (src.match(pic_bmp)) {
						AppendImage(i, src, 'a');
				}
		}
});

Запостил: DarkThinker DarkThinker, (Updated )

Комментарии (12) RSS

  • ну да, зачем писать альтернативы в регулярке? Только хардкор!=)
    Ответить
      • '|' ?, не, не слышал.

        var pics = /(\.jpg|\.jpeg|\.png|\.bmp)$/i;
        
        if (src.match(pics)) {
            AppendImage(i, src, 'a');
        }

        Зачем тут массивы ?)
        Ответить
        • А еще можно было бы строку развернуть и искать в обратную сторону, а то регулярки умеют только слева направо, что в данном случае непрактично (poker face).
          Ответить
          • Обрати внимание на $ в конце - это служит регуляркам достаточной подсказкой.
            ...Хотя честно говоря не знаю, какая реализация регулярок в JS, может и правда не умеет. 🙂
            Ответить
            • function extensionMatches(s){
                	   for (var i = s.length - 1, r = "";
              	       i >= 0 && r.length < 4 && r[i] != ".";
              	       r += s[i], i--);
              	   return /^(ge?pj|gnp|pmb)/i.test(r);
              }
              :3
              Ответить
        • Ну просто массивы обычно проходят ДО регулярок. Я поверю что автор не знал про |, но не знать это... "JS за 24 минуты" детектед.
          Ответить

Добавить комментарий

Где здесь C++, guest?!

    А не использовать ли нам bbcode?


    8