Войти в систему

Home
    - Создать дневник
    - Написать в дневник
       - Подробный режим

LJ.Rossia.org
    - Новости сайта
    - Общие настройки
    - Sitemap
    - Оплата
    - ljr-fif

Редактировать...
    - Настройки
    - Список друзей
    - Дневник
    - Картинки
    - Пароль
    - Вид дневника

Сообщества

Настроить S2

Помощь
    - Забыли пароль?
    - FAQ
    - Тех. поддержка



Пишет checkist ([info]checkist)
@ 2010-07-23 22:06:00


Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Как я навалял с кодом.
В общем, разрабатываю я сейчас что-то вроде скрипта автосборки одной специфической системы под UNIX-подобные ОС.
Нашёл пачку багов в SQL-скриптах, пишу разработчику. Он отвечает, мол, у нас всё работает, ищите проблему у себя.
Выясняется, в частности, что скрипт автосборки убивает строки, состоящие только из слова as во всех файлах, где такие строки есть. Начинаю разбираться и вижу вот такой код (публикуется с сокращениями):
sed '/^[:space:]*$/d'
По задумке вашего покорного слуги этот код должен удалять строки, в которых нет ничего, кроме пробельных символов (пробел, неразрывный пробел, табуляция).
Но вся прелесть тут состоит в том, что правильный код выглядит вот так:
sed '/^[[:space:]]*$/d'
А тот код, который был, удаляет все строки, состоящие из расположенных в любом порядке знаков aceps: , в том числе, и строчки, состоящие из слова as.
Вот такие пироги с котятами.

x-post to Говнокод


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


[info]stychos@lj
2010-07-23 18:20 (ссылка)
Подскажи, пожалуйста, вменяемый мануал по preg- выражениям... а то я с малолетства виндузятник хренов, а вот эта вкусная штуковина мне нравится, но нормально осилить не могу :-(

(Ответить) (Ветвь дискуссии)


[info]checkist@lj
2010-07-24 05:06 (ссылка)
Знаешь, я сам долго не мог полноценно освоить рекэскпы, скажу одно: нужно ставить себе задачи и тренироваться. Иначе ты ни хрена не изучишь. А так сойдёт практически любой учебник/статья - хоть Википедия. Правда, тут одно предостережение: лучше пользоваться сначала чем-то не таким глобальным. Если ты под мастдаем, поставь себе ActivePerl, и изучае рекэспы на perl'е, например. В общем, изучай что-то конкретное.
Ну и обращайся, если чо. Я в последние несколько месяцев поднатаскался, могу и рассказать :)

(Ответить) (Уровень выше)


[info]webru@lj
2010-07-23 18:29 (ссылка)
:) бываед, я вот до сих пор не могу понять почему функция gettype в php возвращает string при передачи значения из mysql ячейки типа int(11)...
но самы кративный баг, это когда что-то работает не так, ты найдешь и исправить несколько ошибок о которых даже не подозревал, и только потом найдешь ту, из-за которой всё работает как надо :)

(Ответить) (Ветвь дискуссии)


[info]stychos@lj
2010-07-24 05:44 (ссылка)
Подозреваю, mysql передает потоками через ресурсные указатели. Получается, ближе всего к строкам.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]webru@lj
2010-07-24 07:38 (ссылка)
Либо ZendFramework при обработке через свой адаптер косячит...

(Ответить) (Уровень выше)


[info]darkorion@lj
2010-07-27 19:48 (ссылка)
А ты специально в "space:" буквы переставил, чтобы я подвис на полминуты?

(Ответить) (Ветвь дискуссии)


[info]checkist@lj
2010-07-27 19:50 (ссылка)
Это специально для того, чтобы было понятно, что не о слове говорю вам, но о символах, это слово составляющих!

(Ответить) (Уровень выше)