Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Практика Java — чем заняться?

Лучший ответ:
Когда я начал изучать Java, то тоже возникла такая же проблема, вроде язык знаю, а куда приткнуть не известно, из-за этого даже хотел на другой язык переходить.
Если хочешь сделать то что можно "потрогать", то попробуй разобраться со SpringMVC или Vaadin и сделать небольшой сайт, серверная часть которого на Java.
Но я бы всё таки советовал разобраться с AndroidSDK и запилить простое приложение, времени уйдёт поменьше, а результат не менее приятный)

Худший ответ:
Вы уверены, что не путаете Java и Javascript?
Если имеется в виду всё-таки Javascript, то я бы посоветовал для вашего "(сайт, магазин, сервис, блог и т.д)" написать, например, слайдер или прилипающее меню на чистом js, без сторонних библиотек - это позволит понять, как и зачем применяется javascript.
Вопрос: Как реализовать передачу переменной  из PHP в JavaScript  на конкретном примере?

Лучший ответ:
Если очень коротко :)echo '<script>var someVarFromPhp = 3.1415;</script>';
echo '<script src="js/script_with_using_someVarFromPhp.js" />';

Худший ответ:
//Вариант 1
<input type="hidden" name="param" id="param" value="<?php echo $patam ?>">
//js
var param = $('#param').val(); 
//Вариант 2 
<div id="block" data-param="<?php echo $patam ?>">Ваш блок</div>
//js
var param = $(['data-param']).data('param'); //или var param = $('#block').data('param');
Вопрос: Как исправить ошибку «PHP Warning:  array_map() expects parameter 1 to be a valid callback, first array member is not a valid class name or object»?

Лучший ответ:
Ну говнокод ведь лютый

Худший ответ:
$database->connection должно быть объектом у которого есть метод real_escape_string. Вполне может быть что у вас не подключается к БД и соответственно $database->connection пустой.
Вопрос: Бесплатную систему управления проектами на PHP или Perl?

Лучший ответ:
По вашим требованиям подходит redmine, но он на ruby.

Худший ответ:
попробуйте qdPM, использую для небольшого проекта — самое то. Конечно не сравнить с редмайном и тем более с Jira. А вообще, если предполагается долгосрочный проект, советовал бы смотреть в сторону Jira.
Вопрос: Вычисление разницы между двумя ассоциативными массива

Лучший ответ:
Да, что то не до конца понятно, массивы, база данных, хранить полностью но не полностью =)

Array_ функции будут работать лучше всего, так как они нативные. Если это база, то вычислить расхождения можно и с ее помощью. Если это инкрементальные бекапы, то myqldump + gzip =)) Или вообще полное логирование запросов опять же с упаковкой в gzip.

Надо больше информации.

PS: Так же не ясно сколько данных и какая нагрузка. И почему не хорошо хранить все в базе.

Худший ответ:
не думаю, что можно придумать что-то лучше, чем array_diff_assoc или array_diff_uassoc, когда решал подобную задачу использовал именно их, лучше решения не нашёл

ну и если нужно хранить действительно большие объемы можно посмотреть в сторону NoSql, например mongo
Вопрос: Кому нужен старательный IOS — junior без опыта?

Лучший ответ:
Был у меня определенный промежуток времени, когда у меня бизнес рухнул, долги остались и мечтал я устроиться на работу.... Эх, 8-ми часовой рабочий день, 5 дневная рабочая неделя.... Раскис в общем я. 
Теперь ближе к делу. Нулевой опыт? Ты мерчентайзер/кассир в супермаркете, который услышав разговор двух фрилансеров про заработки на oDesk 3-5к у.е. в месяц решил стать программистом? 
Когда-то автор ядра Linux Линус Торвальдс сказал: "Болтовня ничего не стоит, покажи нам свой код"!
С моей точки зрения твой алгоритм должен быть примерно таким:
1)Регистрируйся на brainstorage.me (заполнение базовой анкеты)
2)Указывай все технологии, которыми хоть в какой-то степени владеешь: git, yii, laravel, php, mysql, postgreSQL, redis... Причем не важно в какой именно степени ты знаешь, приложение Getting Started из документации освоил(для фреймворков), сервер запустить смог(для БД) - ок, будем считать что минимальное знакомство с ними ты имеешь
3)У тебя есть какой-то код? Может быть твои лабы, курсовые, диплом и т.п. Выложи его в паблик на GitHub и добавь ссылку в резюме. Покажи свой код!
4)Рассылай резюме максимально большому количеству предприятий. В сопроводительном письме пиши что мол опыта почти нет, готов работать за еду
Далее ждешь тестовых заданий и пытаешься сделать их. По результатам уже разговариваешь с работодателем на тему з/п, испытательного срока и т.д. Из своего опыта могу сказать, что для junior в моем регионе(юг РФ) максимальная з/п 250 у.е. по текущему курсу. Как в центре РФ - не знаю.
Удачи! :-)

Худший ответ:
Такой нужен всем! )
В каком направлении хочешь развиваться???
Вопрос: SSL сертификат для SEO продвижения. Кого выбрать и какой сертификат?

Лучший ответ:
@ikozlov_com за 12 евро в год беру сертификаты Rapid SSL, там же где арендую серверы. Ощутимых изменений позиций в ПС, после анонса что сайты с ssl будут выше в выдаче, что-то не наблюдаю. И сомневаюсь что используя какой-то более крутой сертификат будут ощутимые сдвиги.
При ранжировании гугл несколько сотен параметров учитывает, надежное соединение и наличие сертификата лишь пара из них. Не заморачивайтесь особо с сертификатами и не переплачивайте за то что Вам не нужно. Возьмите какой-нибудь не дорогой сертификат и лучше лишний раз закажите SEO аудит, оптимизацию или продвижение сайта (статьи, ссылки и т.д.).

Худший ответ:
Сертификат стоит на последних местах по сео признакам у гугла, изменений в позициях на сайтах перешедших на ссл мы пока не увидели.
На
https://www.rapidsslonline.com/
сертификат стоит баксов наверно 50 на 4 года по акции
Вопрос: Как сделать сайт автоматизированным?

Лучший ответ:
https://ru.wikipedia.org/wiki/Content_Management_F...
И своё писать вовсе необязательно:
https://en.wikipedia.org/wiki/List_of_content_mana...

Худший ответ:
Большинство современных сайтов написаны на различных CMS. Но если ты пишешь сайт сам, зачастую, проще самому написать т.н "Админку", то есть отдельный блок сайта, через который будет осуществляться управление им.
Привожу пример:
На твоём сайте необходимо будет добавлять новости. Обычному пользователю - никак, только админу. Тогда, в БД - отдельный столбец - isAdmin, и если у пользователя он = true, то вывести кнопочку "добавить новость", при нажатии на которую будет загружаться специальная страница сайта, предназначенная для добавления новости.
Для понимания принципа работы админки и "конструкторов" сайтов рекомендую тыкнуть сюда (ucoz).
Вопрос: Могут ли быть проблемы у клиента из-за пиратских шрифтов на странице?

Лучший ответ:
Ничего вам не понятно, вы используете шрифт незаконно.
Либо платите, либо используйте другой.

Худший ответ:
вор в этом случае вы. А теперь подумайте кто отвечает  за кражу
Вопрос: Что изучать asp.net MVC или WPF? Какие технологии имеют больше перспектив?

Лучший ответ:
На мой взгляд, ASP.NET MVC будет перспективнее. Сейчас все больше функционала переносится с десктопа в веб, особенно что касается взаимодействия с базами данных, больший упор идет на saas-решения, где есть backend и может быть много различных клиентов - веб-страницы, мобильные приложения, стандартные десктоп-программы

Худший ответ:
Склонен к тому, что за Web приложениями будущее. Хотя не все задачи можно решить с их помощью.
По своему опыту скажу, что WPF использовал только несколько раз, для клиентов на рабочих местах, где необходим был функционал работы с локальным оборудованием.
Все зависит от конкретной задачи, а под нее уже нужно подбирать варианты реализации.
Вопрос: Какую CMS начать изучать?

Лучший ответ:
Если выбор стоит между Джумлой или Вордпресс, то выбирать стоит Вордпресс однозначно

Худший ответ:
Смотря для каких Вам целей.
Вопрос: Наушники типа «вкладыши» (вставляемые внутрь ушной раковины) обыкновенно имеют провод к одному уху короче, чем к другому. Это стандартизировано?

Лучший ответ:
Все наушники с проводами разной длины, которые мне встречались, предполагали короткий левый и длинный правый, который закидывается через затылок. Обратного не припомню.

В этом случае общий подводящий провод (до коробчонки с кнопками-регуляторами) располагается ближе к сердцу и его удобнее достигать правою рукой, более приспособленной для различных манипуляций.

Худший ответ:
Были панасоник рублей за 400 с одинаковой длиной и родные самсунг от плеера, тоже с одинаковой. Стандарта нет.
Вопрос: Как можно реализовать подобный вывод новостей?

Лучший ответ:
Банально свой шаблон сделать сеткой.
Первая новость (по счётчику можно сверить) выводится большой плашкой на 2/3.

Худший ответ:
Можно посмотреть в сторону плагина Ajax Load More или скрипта Masonry
Вопрос: the_post_thumbnail() Как убрать размеры в img?

Лучший ответ:
Еще можно в functions.php вставитьfunction true_thumbnail_url_only( $html ){
	return preg_replace('#.*src="([^\"]+)".*#', '\1', $html );
}
add_filter('post_thumbnail_html', 'true_thumbnail_url_only', 10, 5);
В итоге при вызове<?php the_post_thumbnail();?>
Будет выводиться только ссылка на миниатюру.

Худший ответ:
Если вы знаете ширину и высоту изображения — лучше их указывать.
IE8 победите с помощью CSS.
Вопрос: Как правильно работать с авторизацией в angularjs?

Лучший ответ:
Токен должен пересылаться в заголовках каждого запроса, который требует авторизации.
рекомендую к прочтению дискуссию на SO

Худший ответ:
Я сделал такmyApp.factory('AuthInterceptor', ['$window', '$q', '$log',
    function($window, $q, $log) {
        $log.debug('start AuthInterceptor');
        return {
            request: function(config) {
                config.headers = config.headers || {};
                if ($window.localStorage.getItem('key')) {
                    config.headers.Authorization = 'Token ' + $window.localStorage.getItem('key');
                }
                return config || $q.when(config);
            },
            response: function(response) {
                if (response.status === 401) {
                    $log.debug('Hey! I"m javascript. Authorization is needed!');
                }
                return response || $q.when(response);
            }
        };
    }
]);myApp.config(['$locationProvider', '$stateProvider', '$urlRouterProvider', '$httpProvider',
    function($locationProvider, $stateProvider, $urlRouterProvider, $httpProvider) {

        // Authorization interceptor
        $httpProvider.interceptors.push('AuthInterceptor');

    }
]);
Вопрос: Не работает удаление строки из таблицы Mysql. В чем проблема?

Лучший ответ:
А где ты переменную $delete получаешь?
Это 
$delete_ = $query = "DELETE FROM `auditoru` WHERE ID_audit='$delete_'"; 
Замени на это:
$delete = $GET["delete_"];
$query = "DELETE FROM `auditoru` WHERE ID_audit='$delete'";

Худший ответ:
$delete_ = $query = "DELETE FROM `auditoru` WHERE ID_audit='$delete_'";
У меня 2 вопроса:
1. зачем у тебя в $delete_ присваивается строка запроса
2. как в запрос "DELETE FROM `auditoru` WHERE ID_audit='$delete_'"; проходит $delete_? Выше я не вижу что бы ты его присвоил.  А приодит у тебя скорее всего get
После $delete_ = $query = "DELETE FROM `auditoru` WHERE ID_audit='$delete_'";
Напиши echo $query; 
и увидишь какой запрос сформировался. Что то мне подскаывает что будет вот такой
DELETE FROM `auditoru` WHERE ID_audit=''
Вопрос: Где искать единомышленников для создания проекта?

Лучший ответ:
Бесплатно ничего не получиться. Даже единомышленники хотят есть и отдыхать.

Худший ответ:
Ну, наверное тут - хорошее место. Я думаю, что похож в этом на вас. Всегда пилю один-два хобби проэкта, лишь бы интересно было. Всегда ищу с кем бы это делать. 
Но в вебе я полный ноль :)
Вопрос: Уведомления о запуске своего проекта

Лучший ответ:
Если стоит задача просто собирать e-mail с потенциально заинтересованных лиц, чтобы потом их уведомить о запуске (и далее слать им новости проекта, например), то оптимально на мой взгляд юзать MailChimp.

Худший ответ:
1) Уведомления о запуске
2) разрекламировать в соц сетях, гугле, яндексе. 
3) Если народ уже ждет с нетерпением Вашего проекта, то уведомить всех по эл. почте, которую те оставляют на заглушке.
Вопрос: Как обнулить анимацию CSS после ее завершения, чтобы она проигралась еще раз так, будто страница обновилась?

Лучший ответ:
codepen.io/iiil/pen/aeugt
Вот пример, я просто заново вставляю этот элемент в родителя. Анимация плавная, но когда проходит 5 секунд — скачок, это как раз она обновляется.

Худший ответ:
Зависит от того, куда у вас анимации прицеплены. Если к какому-то специфичному классу, то можно его убрать с элемента, после чего добавить снова, типа:$('#target-element').removeClass('animation');
setTimeout(function(){ $('#target-element').addClass('animation'); }, 0);
Вопрос: Тема диплома (диссертационной работы) по «Компьютерному зрению» и «AI»

Лучший ответ:
Лично мне интересны системы с функционалом:
 — распознавания дорожных знаков с выводом соответствующих предупреждений (визуальных или аудио) для водителя.
 — «социальной сети» для водителей: камера распознаёт в потоке номера автомобилей. Если находит «знакомых» водителей, сообщает, типа «друг твой едет» :) Сложно, конечно.
А можно описанное выше «запихать» в одно приложение) Не знаю, правда, тянет ли подобное на диплом.

Худший ответ:
Существует ли алгоритм распознавания вертикально снятых фото/видео от горизонтально?
Сорри если бред, но пригодилось бы :)
Вопрос: Как получить HTML и потом получить данные из него?

Лучший ответ:
Это ведь обычный RSS. На сайте MSDN прямо туториал есть по созданию простой RSS-читалки: msdn.microsoft.com/en-us/library/windowsphone/develop/hh487167(v=vs.105).aspx

Худший ответ:
Она не корректно работает, не возвращает всех данных.
Вопрос: Как связаны права доступа к файлу и с правами символьной ссылки?

Лучший ответ:
Как сделать так, чтобы тот, у кого есть только ссылка, а не сами файлы, не мог менять эти самые файлы?
Это всегда так: т.е. доступ к файлу определяется только владельцем/разрешениями этого файла. Владелец/разрешения ссылки не имеют значения.Как связаны права доступа к файлу и с правами символьной ссылки?
Никак. В линуксе права доступа ссылки никак не используются и не могут быть изменены, см. например man 7 symlink.

Худший ответ:
Ссылка своих прав не имеет, используются права файла. Установите правильные права на сам файл.
Вопрос: Поможете с буксом?

Лучший ответ:
Сохраните эту картинку, а потом откройте ее в блокноте. Тогда увидите текст ошибки. Ну или проксируйте например через charles

Худший ответ:
В самую первую строку генерации изображения добавить «header('Content-Type: image/png');» ?
Вопрос: На сайте завелся вирус — помогите побороть

Лучший ответ:
Распространенная проблема. Троян у Вас на компе. Ворует пароль на фтп и потом подключается и дописывает свой код. 
Сначала меняйте пароль через Директадмин на фтп акаунты, потом обращайтесь к тех. поддержке хостера. Они либо из бекапа вытянут файлы сайта либо почистят своими скриптами. У них есть самописные скрипты для выкусывания этой гадости. Каждый день с таким сталкиваются.

Худший ответ:
У меня та же проблема, тоже на выходных. (Вова, это не ты?)
Вы случайно не FileZilla пользуетесь?

Есть инфо как вирус удалить? (NOD не видит в упор)
Вопрос: Как правильно разделить разработку веб-проекта на юзер-стори?

Лучший ответ:
Как всегда и везде, люди не до конца изучили agile/scrum и что то постят..
Ни где четко не прописано что заказчик должен быть вовлечен в процесс. 
В первую очередь, SCRUM это управленческий фреймворк который позволяет упорядочить процессы, наладить коммуникации и поставлять инкременты итеративно.
В каком виде будет выглядеть ваш инкремент это уже решать вам лично. В виде юзер стори, в виде чеклиста/идеи/тасков/эпиков и т.п.
Если мы говорим о настоящем Agile Scrum, то собираем команду, изолируем её от всего кроме нашего проекта и дальше по методологии:
(тут есть только 2 простейших процесса где нужен заказчик на 1-2 часа в 2 недели. типичная ошибка, звать его везде как этому учат на дурацких тренингах за 1000$)
1. Собираем с заказчика хотелки и пихаем в беклог
2. Собираемся и грумим беклог дробя эпики на мелкие стори или еще мельче эпики
3. Делаем спринт пленинг и дробим беклог на задачи, поочередно оценивая всё
4. Согласовываем инкремент и какой Definition of Done
5. Работаем итерацию попутно проводя дейли статус митинги для синхронизации статусов и раннего выявления проблем
6. Демонстрируем в конце что получилось, собираем от заказчика фидбек и форматируем беклог, возвращая в него то что не готово и все что не влезло в спринт
7. Делаем ретроспективу и убеждаемся что копаем в нужном направлении и не делаем ничего лишнего либо добавляем в процессы работы то что стоило бы делать
8. Возвращаемся к пункту 1
Добавлю, что в беклоге может быть всё начиная от эпиков, юзер стори и заканчивая отдельными задачами, багами и т.п. 
Когда вы начинаете оценивать стоимость и сроки проекта под Agile/Scrum вы наступаете на теже грабли. Если заказчик не знает на что он идет то это не Agile.
Наши клиенты уже с шишками и готовы платить деньги не представляя стоимости проекта в целом и тем более его сроков. С большего это стартапы. На опыте запуски и провалы хороших проектов. Один из них уже 4й год на рынке и поднял 20 лямов инвестиций в США и сейчас является одним из успешных интернет магазинов в США.
Изначально на кармане у заказчика было денег понты и работало 2 человека на проект - бекенд и айос и копали-копали пока не выросли до постоянной команды в 5 человек (бекенд, фронтенд, айос, андроид, qa) которые непрерывно работают на проекте и копают спринтами один за другим. И ни кто никого не гонит. Заказчик купается в бабле

Худший ответ:
"Проект должен пройти в любом случае через" этим вы уже отстраняете себя от гибкой методологии.
А далее user story это просто маленькие задачки, притом целостные.
И эти задачки должны иметь бизнес цену.
К примеру "добавить функцию в API" для бизнеса в разы ценнее, чем "Добавить анимацию на кнопку".
Вопрос: Доступ к серверу извне?

Лучший ответ:
— IP должен быть белым. А то можеть этот IP, который вы определили — используется еще у целого квартала юзеров. 

 — Если используете роутер, то нужно открыть соответствующий порт и направить его на ваш nginx с ubuntu.

 — Ну и файволле в убунту открыть порт, если файрфолл включен.

Худший ответ:
Чтобы быстро проверить работу сервера не прокидывая порты, можно на роутере на время включить для IP вашего компьютера DMZ, грубо говоря «высунуть» компьютер наружу.
Вопрос: Лицензии Cisco — скачать, купить?..

Лучший ответ:
K9 нужен для VPN, или для ssh?
Если первое, и вас несильно заботит некоторое нарушение закона:
1) Скачать с сайта циски софт с k9. Либо можно скачать с торрентов, сверив md5 с цискиным, благо они дают его посмотреть даже если прав скачать нет.
2) Включить вечный триал: «license accept end user agreement» и «license boot module c3900 technology-package securityk9». Только учтите, что в какой-то момент триал может перестать быть вечным. Однако, на всех текущих линейках проблем нет.

Разумеется, у меня на работе все шифрование проведено через ФСБ и легально закуплено, но вот дома:
#show license 
Index 1 Feature: ipbasek9 
 Period left: Life time
 License Type: Permanent
 License State: Active, In Use
 License Count: Non-Counted
 License Priority: Medium
Index 2 Feature: securityk9 
 Period left: Life time
 License Type: RightToUse
 License State: Active, In Use
 License Count: Non-Counted
 License Priority: Low

Худший ответ:
K9 нужен для VPN, или для ssh?
Если первое, и вас несильно заботит некоторое нарушение закона:
1) Скачать с сайта циски софт с k9. Либо можно скачать с торрентов, сверив md5 с цискиным, благо они дают его посмотреть даже если прав скачать нет.
2) Включить вечный триал: «license accept end user agreement» и «license boot module c3900 technology-package securityk9». Только учтите, что в какой-то момент триал может перестать быть вечным. Однако, на всех текущих линейках проблем нет.

Разумеется, у меня на работе все шифрование проведено через ФСБ и легально закуплено, но вот дома:
#show license 
Index 1 Feature: ipbasek9 
 Period left: Life time
 License Type: Permanent
 License State: Active, In Use
 License Count: Non-Counted
 License Priority: Medium
Index 2 Feature: securityk9 
 Period left: Life time
 License Type: RightToUse
 License State: Active, In Use
 License Count: Non-Counted
 License Priority: Low
Вопрос: Почему блоки не становятся друг на против друга?

Лучший ответ:
Вам нужно разобраться с плавающими объектами.

Худший ответ:
Держите
P.S.  "Решение" не забудьте
Вопрос: Книги по операционным системам?

Лучший ответ:
Таненбаума уже посоветовали.
Могу посоветовать еще очень хороший комплект из 2х томов: Дейтел «Операционные системы».

Еще нам по курсу советовали Соломон, Руссинович «Внутреннее устройство Microsoft Windows». Интересно, даже полезно, но слишком зашито под Windows, но некоторые полезные вещи можно вычитать. Также очень интересен блог Руссиновича — blogs.technet.com/b/mark_russinovich/

Худший ответ:
Brian L. Stuart — Principles of Operating Systems
Вся теория объясняется на конкретных кусках кода из Linux, Inferno и TinyOS.
Вопрос: Как правильно экранировать слеш в php?

Лучший ответ:
Тут не надо ничего экранировать !
Ненадо обарачывать переменные в кавычки !!$data = array(
    $key->naimenovanie,
    $key->proizvoditel,
    $key->nds,
    '<span id="cena_data">' . $key->cena . '</span>',
    $key->srok,
    $key->zhvl,
    $key->ostatok,
    '<input type"text"  id="kol_data">',
    '<input type="text" id="summa_data">'
);

$jsonData = json_encode($data);

Худший ответ:
я не программист на php но в баше  проще всего избавиться от гемороя просто hex-16 аналогом символа,  в php однозначно есть такая же возможность.
Вопрос: Один и тот же закачанный файл имеет разный размер при каждой новой закачке

Лучший ответ:
Битый RAM?

Худший ответ:
Может быть антивирус? Или прокси сервер?
Вопрос: Как связать звонки телефона на IP ATC с БД?

Лучший ответ:
Проще всего купить облачную (виртуальную) IP АТС у провайдера телефонии, из коробки там функционала предостаточно. 
Немного сложнее - настроить Asterisk, взять SIP номер и самостоятельно управлять звонками, гайдов на самом деле предостаточно на хабре

Худший ответ:
В астериске делается с помощью DB_EXISTS (в его родную базу). Настройка этого зависит от логики атс в целом. То есть нельзя сказать прям точно, как это надо делать в вашем случае. В общем, смотрите в сторону https://wiki.asterisk.org/wiki/display/AST/Functio...
Вопрос: Как из себя вырастить CIO?

Лучший ответ:
Прочитайте книгу Айн Рэнд «Атлант расправил плечи». Самое то для перелома мышления.

Худший ответ:
По моим представлениям, прежде, чем стать ИТ директором, сначала нужно стать неофициальном тимлидом, затем старшим программистом, ну а там будет видно. Читайте книжки про управление проектами, грамотную разработку (юнит тесты, парное программирование, баг- и тайм-трекинг, ведение документации, TDD), взаимодействие с персоналом и клиентами. Начните с «Как пасти котов» к примеру. Только остерегайтесь Методологий. Главное — понять принцип, а не тупо следовать чему-то, написанному в толстой книжкой с целью получения ее автором докторской степени.
Вопрос: Laravel / Blade — как экранировать только часть?

Лучший ответ:
Условием@if(isset($name)) 
 {{$name}}
@else 
  <span class="class-a">без имени</span>
@endif

Худший ответ:
{!! isset($name) ? htmlspecialchars($name) : '<span class="class-a">без имени</span>' !!}
Не Laravel-стайл, но все-же.
Либо условием, но так кода больше.
Вопрос: Как дополнить регулярное выражение?

Лучший ответ:
Не стоит парсить HTML с помощью регулярных выражений.

Но если очень хочется, в вышем случае правильно для этой цели использовать внешний подсчёт результатов выполнения регулярного выражения:
$count = preg_match_all('/(img|src)=("|\')[^"\'>]+/im', $html);
if ($count > 1) ...

Регулярное выражение я бы поправил:
/<img\s+[^>]*src\s*=[^>]+>/i

Худший ответ:
Вот так, например:
var q = 0, urls = [];
innerHTML.replace(/\s+/, ' ').replace(/(?:\r|\n|\s)+/, ' ').replace(
    /<img(?:.+?)?src=("|')(.+?)\1(?:.+?)?>/i, 
    function(mtch, q, url) {
        urls[q++] = url;
    }
);
alert('Картинок - '+q);


Ну или через RegExp.exec()