Существуют ли механизмы прямо или косвенно создать себе полевое задание? В своём районе города я уже выполнил почти все полевые задания. Новых нет :( При этом открываю Яндекс-карты и вижу, что они крайне не актуальны для моего города.
Тут скорее всего тайного полицейского повысили в системе до закладчика и состоялся реальный контакт с дилером, а дальше паяльником цепочку раскрутили. Это не проблема телеги.
Знающие люди, подскажите, пожалуйста: существуют ли в США сервисы продажи наркотиков через телеграмм? Ответ на данный вопрос можно считать неким маркером- есть ли у властей США доступ к переписке в Телеге.
В блоке «Простые шаблоны, соответствующие позиции» рекомендовал бы разобраться с определениями «строка», «строчка», «вся строка», иначе присутствует неоднозначность. Ввести и разъяснить два определения: что такое «строка» и что такое «текст». Тогда всё становится очень просто и однозначно: \А это начало текста, \Z это конец текста. ^ / $ — начало/конец текста ИЛИ строки и данное поведение управляется флагом мультилайн.
Есть подозрение, что Вы измеряли время, которое тратится на 10000 вызовов функции и возврат результата из этой функции. Попробуйте применить более «тяжелые» вычисления и это время станет незаметно в общем результате.
То есть Ваш поисковик не готов к резкому всплеску популярности запроса? Например появляется очередной "Pokemon GO" и начинается огромный поток запросов по нему. Какая будет реакция? Естестенна ли данная ситуация?
А что, если хранить для файла сразу два хэша по разным алгоритмам? Например хранить sha1 и md5- тогда коллизия будет возможна только брутфорсом и не важно сколько человекочасов было потрачено на исследование любого из двух алгоритмов.
Дам всего один простой совет: если не можете прочитать сложное регулярное выражение- в коде в комментарии к нему указывайте ссылку на regex101, там редактируйте его с подсветкой синтаксиса, подсказками, тестами. И не забывайте про режим eXtended- в нем регулярные выражения любой сложности читаются очень легко.
Сложное регулярное выражение на DSL будет гораздо большим трэшем, чем его обычная запись, как мне кажется.
1) Я не сравниваю Java и JS. Заведомо знаю, что JS быстрее за счёт нативных реализаций регулярных выражений. Сравнивать совместно с grossws начали Java и Python-.
2) Я не эксперт в прогревании Java, поэтому ниже Вы найдете комментарий, где я использовал правильное прогревание. Напишите свое прогревание, если это не понравится.
3) Обсуждение моей глупости предлагаю продолжить под этим комментарием.
Тесты (сразу говорю- не нравится IDEone, копируйте на свою локальную машину. Чините Copy/Paste- у некоторых сломано)
Java с качественным многоступенчатым прогреванием от xhumanoid: http://ideone.com/6JU2Ln
На IDEone не хватает времени на прогрев Java. Результат на моей машине в среднем: 850ms
Python без прогревания: http://ideone.com/MDuGlk
Результат на моей машине в среднем 430ms.
Оу, прикольно :) За весь этот спор мне слили 8 кармы.
Печально вести спор, когда может минусовать любой человек не понимающий сути вопроса :( Зря я это начал :(
Ладно, буду надеяться, что они минусовали карму за личные набросы, а не то, что я иду против системы. Будет мне наука :(
Извините, что заставил Вас долго ждать. Был занят по работе, к сожалению, поэтому просто читал, минимум комментировал.
Продолжим замеры производительности, только теперь усложним регулярное выражение: до этого я приводил самое простое и примитивное.
Итак.
Есть очень полезная методика создания регулярных выражений в которых надо реализовать множественные правила.
Например, логин может состоять из [a-zA-Z0-9_ ], при этом не может быть два раза подряд символ _, а также текст должен начинаться с [a-zA-Z] и не заканчиваться на [ _]. По указанной выше методике получим регулярное выражение:
^(?!.*__)(?=[A-Za-z])[a-z A-Z0-9_]+(?<![ _])$
Применим его к тексту:
c a b d
После прогревания Java вдвое медленнее, чем Питон.
Проверьте у себя и продолжим разговор, если Вы не против.
При чем здесь это вообще?
Какая разница какой набор возможностей PCRE поддерживает конкретная реализация? Если в Питоне есть поддержка рекурсии, а в Ява нет, то сравнивать не корректно?
Поясните свою мысль подробнее.
Для задач парсинга текста.
Конечно оптимальный. Ведь если грамотно использовать регулярные выражения, то они более производительны, чем «чистые» реализации практически во всех транслируемых ЯП.
Дабы не спровоцировать спор еще и по этому вопросу сразу сделаю отсылку: https://habrahabr.ru/company/rootwelt/blog/302364/#comment_9647414
Существуют ли механизмы прямо или косвенно создать себе полевое задание? В своём районе города я уже выполнил почти все полевые задания. Новых нет :( При этом открываю Яндекс-карты и вижу, что они крайне не актуальны для моего города.
Тут скорее всего тайного полицейского повысили в системе до закладчика и состоялся реальный контакт с дилером, а дальше паяльником цепочку раскрутили. Это не проблема телеги.
Знающие люди, подскажите, пожалуйста: существуют ли в США сервисы продажи наркотиков через телеграмм? Ответ на данный вопрос можно считать неким маркером- есть ли у властей США доступ к переписке в Телеге.
В блоке «Простые шаблоны, соответствующие позиции» рекомендовал бы разобраться с определениями «строка», «строчка», «вся строка», иначе присутствует неоднозначность. Ввести и разъяснить два определения: что такое «строка» и что такое «текст». Тогда всё становится очень просто и однозначно:
\Аэто начало текста,\Zэто конец текста.^/$— начало/конец текста ИЛИ строки и данное поведение управляется флагом мультилайн.Есть подозрение, что Вы измеряли время, которое тратится на 10000 вызовов функции и возврат результата из этой функции. Попробуйте применить более «тяжелые» вычисления и это время станет незаметно в общем результате.
Всё изменится. Бюджетников обязали получать зарплату на МИР, а значит количество реально использующих эту систему людей станет больше нуля.
То есть Ваш поисковик не готов к резкому всплеску популярности запроса? Например появляется очередной "Pokemon GO" и начинается огромный поток запросов по нему. Какая будет реакция? Естестенна ли данная ситуация?
Эволюция интерфейсов:
Консоль — GUI — чат бот
А что, если хранить для файла сразу два хэша по разным алгоритмам? Например хранить sha1 и md5- тогда коллизия будет возможна только брутфорсом и не важно сколько человекочасов было потрачено на исследование любого из двух алгоритмов.
Спасибо. Пригодится. Есть ли возможность аналогичным удобным путем ограничить сетевой траффик ?
Дам всего один простой совет: если не можете прочитать сложное регулярное выражение- в коде в комментарии к нему указывайте ссылку на regex101, там редактируйте его с подсветкой синтаксиса, подсказками, тестами. И не забывайте про режим eXtended- в нем регулярные выражения любой сложности читаются очень легко.
Сложное регулярное выражение на DSL будет гораздо большим трэшем, чем его обычная запись, как мне кажется.
1) Я не сравниваю Java и JS. Заведомо знаю, что JS быстрее за счёт нативных реализаций регулярных выражений. Сравнивать совместно с grossws начали Java и Python-.
2) Я не эксперт в прогревании Java, поэтому ниже Вы найдете комментарий, где я использовал правильное прогревание. Напишите свое прогревание, если это не понравится.
3) Обсуждение моей глупости предлагаю продолжить под этим комментарием.
Тесты (сразу говорю- не нравится IDEone, копируйте на свою локальную машину. Чините Copy/Paste- у некоторых сломано)
Java с качественным многоступенчатым прогреванием от xhumanoid:
http://ideone.com/6JU2Ln
На IDEone не хватает времени на прогрев Java. Результат на моей машине в среднем: 850ms
Python без прогревания:
http://ideone.com/MDuGlk
Результат на моей машине в среднем 430ms.
Оу, прикольно :) За весь этот спор мне слили 8 кармы.
Печально вести спор, когда может минусовать любой человек не понимающий сути вопроса :( Зря я это начал :(
Ладно, буду надеяться, что они минусовали карму за личные набросы, а не то, что я иду против системы. Будет мне наука :(
Извините, что заставил Вас долго ждать. Был занят по работе, к сожалению, поэтому просто читал, минимум комментировал.
Продолжим замеры производительности, только теперь усложним регулярное выражение: до этого я приводил самое простое и примитивное.
Итак.
Есть очень полезная методика создания регулярных выражений в которых надо реализовать множественные правила.
Например, логин может состоять из
[a-zA-Z0-9_ ], при этом не может быть два раза подряд символ_, а также текст должен начинаться с[a-zA-Z]и не заканчиваться на[ _]. По указанной выше методике получим регулярное выражение:Применим его к тексту:
После прогревания Java вдвое медленнее, чем Питон.
Проверьте у себя и продолжим разговор, если Вы не против.
При чем здесь это вообще?
Какая разница какой набор возможностей PCRE поддерживает конкретная реализация? Если в Питоне есть поддержка рекурсии, а в Ява нет, то сравнивать не корректно?
Поясните свою мысль подробнее.
1) У Вас Copy/Paste сломались для теста на своей машине?
Идеон только как удобное средство размещения кода.
Любая игра теряет игроков. Тут надо смотреть статистику: сколько установило, сколько играет.
Например?
Напишите, пожалуйста, альтернативу
str.replaceAll( "[^\wа-яА-ЯёЁ]+", "" )Для задач парсинга текста.
Конечно оптимальный. Ведь если грамотно использовать регулярные выражения, то они более производительны, чем «чистые» реализации практически во всех транслируемых ЯП.
Дабы не спровоцировать спор еще и по этому вопросу сразу сделаю отсылку: https://habrahabr.ru/company/rootwelt/blog/302364/#comment_9647414