Накипело

May 03, 2010 17:52


Я часто страдаю из-за того, что не могу найти дату поста. Может быть, в рассуждениях о смысле жизни не так важен век, в котором творил автор, но вот читать статью от 2004 года про css-хак смысла уже нет.
Блоггер, ставь дату!
Read more... )

web

Leave a comment

Comments 6

nikita_timofeev May 3 2010, 16:13:45 UTC
Не так. Разработчик блогодвижка ставь дату автоматически!

Мне казалось что с какой-то версии в пятом перле юникод искоропки (могу и ошибаться). А вообще молиться мне кажется проще чем постоянно дёргать метод, так что PHP рулед. А как с этим дела в ruby обстоят? Он в последнее время мне улыбается и предлагает заменить во многих прикладных задачах perl (хотя бы пятый).

Кодировки ужасны, да. Если бы ещё можно было везде отказаться от однобайтовых кодировок, можно было сказать что всё кроме юникода должно умереть. А для чего ты обращаешься к конкретному символу строки? Я просто испорчен перлом и в рамках модификации строки думаю регулярными выражениями.

По некоторым серьёзным причинам мне настоятельно рекомендуют сменить страну и род деятельности, но я не тороплюсь, чего и тебе советую: всякие перлы, пистоны и руби прекрасны в ряде аспектов, но пишут всё равно в основном на php.

Reply

kalabro May 3 2010, 17:33:02 UTC
в строке $str = "25€" (неважно, откуда она, она в utf-8 и прекрасно выводилась в браузер) третьим символом шла кракозябра, а длина строки равнялась пяти. use utf8; всё исправил (как это называется? пространство имён? директива?)
в PHP длина строки была равна трём (есть там возможность перегрузить некоторые функции, и, видно, битрикс перегрузил то, что ему нужно), но символ по-прежнему не читался, а функции регулярных выражений возвращали смещения в байтах, а не в символах, как strlen. В общем неудачный союз входных данных и (признаю) моего кода.

На Ruby даже Hello, World! не писала. И не уверена, что напишу.

Ну, наверно, я ещё недоконца испорчена регулярными выражениями. Всё-таки они «тяжёлые» (мне так сказали, а я поверила), и иногда я предпочитаю ручками проверить, что там дальше лежит.

Reply

nikita_timofeev May 3 2010, 18:34:20 UTC
use utf8; в перлах зовётся прагмой (такая неведомая хрень при желании перекурочивающая работу интерпретатора, например так чтобы он интерпретировал латынь). Однако же perl версии 5.10.1 и rakudo понимают твой пример и без этой прагмы.

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

ndtimofeev@slackhome:~$ irb
irb(main):001:0> puts "Hello World"
Hello World
irb(main):002:0>
irb(main):010:0> a = %w[ Ruby очень сложный язык программирования ]
irb(main):011:0> b = %w[ очень сложный ]
irb(main):014:0> c = %w[ высокого уровня ]
irb(main):023:0> puts [a - b + c].join(" ")
Ruby язык программирования высокого уровня

Регулярные выражения и правда тяжеловесны, но зато позволяют одним махом решить все три основные задачи при работе со строкой: найти позицию подстроки, доступиться до неё, сделать с ней что-нибудь. Не уверен что собственная реализация данного механизма окажется проще и легче.

Reply

kalabro May 3 2010, 18:47:58 UTC
вау

в PHP регулярные выражения слабее реализованы насколько я знаю. но я да, я их люблю. я вообще люблю всякие непонятные штучки

Reply


spyroid May 3 2010, 20:41:21 UTC
Правильно, переходи на яву :)

Reply


Leave a comment

Up