17 августа 2010, 9:40
Иногда людям приходят в голову странные мысли и они спрашивают — «А как подсветить в блоке первые N символов но чтоб типа без встроенных тегов?»
Никак.
Ну, или так:
<script>
function colorize (id, num, empty, styleClass){
// id - ID элемента
// num - сколько символов подсвечивать
// empty - считать ли пустые символы за символы для подсветки
// styleClass - какой класс присваивать символам?
var obj = document.getElementById (id);
if (!obj) return;
var regex = empty ? /^((?:[^\s]\s*){3})/ : /^(.{3})/;
obj.innerHTML = obj.innerHTML.replace (regex, «<span class='»+styleClass+"'>$1</span>");
}
Читать пост целиком »
3 августа 2010, 10:15
А знаете ли вы о том, что в Perl6 можно будет сделать так:
«perl -le 'say q[Hello];'»
?
А можно будет сделать и так:
«perl -le 'q[Hello].say;'»
Это — апофеоз.
11 июня 2010, 10:08
В жизни каждого программиста наступает момент, когда ему надо выцепить кусок текста, независимо от регистра — но в контексте зависимого от регистра текста.
На помощь приходят локальные модификаторы — например, — в пределах кластера это будет так:
— bash-3.2$ perl -le 'my $x = «Abc»; print «ok» if $x =~ /(?i:a) b/;'
ok
— bash-3.2$ perl -le 'my $x = «Abc»; print «ok» if $x =~ /(?i:a) B/;'
— bash-3.2$
Читать пост целиком »
1 июня 2010, 15:21
Когда нормализуешь слова с помощью mystem — лучше использовать bidirectional pipe, вместо того, чтобы каждый раз открывать новый процесс.
Это очень просто.
Учитывая долбанутость mystem, мы будем отбрасывать слова с цифрами и ждать подольше. На всякий там. Пробелы он превращает в _, так что триггеры обоснованы.
Читать пост целиком »
31 мая 2010, 16:48
Запрос оброс мясцом и приобрёл вид типа CONCAT (TRUNCATE (SUM (IF (wl.timeworked IS NULL, 0, wl.timeworked)/3600),1),' h.'), конструкций :)
Ещё немного — и из этого родится или create view, или же он сьест мой мозг :)))
31 мая 2010, 12:09
Делал плагин для JIRA. Запихнул сурцы в Dropbox, снёс систему, переставился, синхронизировался.
Открываю проект в NetBeans — а он мне — Mailformed Maven Project. Download deps ни к чему не привели.
Решение проблемы — это JIRA SDK. Качаем, ставим в PATH папку bin, и из папки сурцов плагина делаем atlas-run. Он подсосёт всё необходимое для системы самостоятельно.
15 апреля 2010, 10:36
Под iPhone вышла Опера.
Попробовал и на компьютере ее поставить. Ну как была куцая — так и осталась.
Я пользуюсь FireFox, потому что уже не могу без милых плагинчиков — LiveHTTPHeader, TamperData, FoxMarks — да хоть того же FireBug. В Opera же так и не удосужились сделать что-то кроме виджетов — это чисто казуальный браузер, видно.
Читать пост целиком »
9 апреля 2010, 15:21
Суть проста — выгрести из Армори последние ачивы, проверить — не постили ли раньше, запостить в ЖЖ.
Накидалось на коленке, я использую БД в расширенной версии скрипта — но решил и такой мелкий написать :)
UPD — чёт ппц криво получился этот сниппет в опубликованном виде. Аттачу ссылку на оригинал.
Plain-Text
Читать пост целиком »
26 марта 2010, 12:46
Задача — из 001e8c15ffbc сделать 00:1e:8c:15:ff:bc
Решение —
perl -le 'my $x = «001e8c15ffbc»;$x =~ s/(...(?!\Z))/\1:/g; print $x'
Разберем по кусочкам этот примитив.
(...(?!\Z))/\1:
... — два любых символа (можно написать длиннее, если сомневаемся, что к нам придёт именно мак) — например, [a-f\d]{2}
(?!\Z) — заглянем вперёд — нет ли там конца строки. Если есть — не попадаем в условие и, соответственно, не заменяем.
Читать пост целиком »
23 марта 2010, 12:48
Удаляем все элементы, которые не цифры. Работаем с референсом.
#!/usr/bin/perl
use strict;
use Data::Dumper;
my $a = [234235,'a',345,34234,23121];
$a = [grep {/^\d+$/ } @$a];
print Dumper $a;
UPD Rommeech заметил багу, исправил
Читать пост целиком »