ДействиеСценарий / Говнокод #16784 Ссылка на оригинал

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
private function getYouTubeVideoIdFromURL (url:String):String {
	if (URLUtil.isHttpsURL(url)||URLUtil.isHttpURL(url)) {
		var startIndex:int = url.indexOf("v=")+2;
		var endIndex:int = url.indexOf("&");
		if (endIndex>startIndex) {
			url = url.slice(startIndex, endIndex); 
		}
		else {
			url = url.slice(startIndex);
		}
	}
	return url;
}

Целый отдел над этой функцией работал.

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

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

  • — А бывает, что нужный параметр идёт в строке не первым и не последним?
    — Нет, сынок, это фантастика.
    Ответить
  • Тоесть утилза которая определяет урл ли это у вас есть, а то что умеет брать гет параметры из него уже нет?
    Ответить
    • О, URLUtil.isHttpsURL, и URLUtil.isHttpURL - это две эпические функции, но они сами по себе не представляют интереса. Интересна история с ними связаная. Вобщем, как и следует из названия, одна из этих фунций проверяет не начинается ли УРЛ с http, а другая - https. Но смысл зарождения этих функций был такой: программа, на старте загружает несколько ХМЛей с настройками, где есть тьма (несколько сотен, точно) УРЛей, потом эти УРЛы расползаются по всей программе, и в каждом месте, где они используются, за ними следуют эти функции.
      Почему, возможно спросите вы? - А потому, что на каком-то этапе программисты писавшие этот проект поняли, что иногда программа загружается по http протоколу, а иногда - https, но код который загружает настройки был так плохо написан, что искать там не пришло в голову - ведь легче всего исправить прямо там, где вот сейчас код открыт в редакторе.

      Я честно рассказал этому отделу про URLVariables, даже примеры привел, но я давно там уже исчерпал свой кредит доверия, так что скорее всего этот код останется в таком виде, на зло, чтобы мне неприятно было 🙂
      Ответить
  • Говорят есть готовые либы для парсинга урлов. Есть они в каждом языке лет 15 как. Врут, наверное.
    Ответить

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

Семь раз отмерь — один отрежь, guest!

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


    8