Ruby

Apr. 20th, 2012 09:34 pm
sfy: (Default)
[personal profile] sfy
Однако, клёв донельзя. Сегодня за полчаса (вместе со скачкой) одной левой решил такую задачку: скачать все первичные формы медицинских документов и организовать их удобным для себя образом. На С++ я бы минимум полдня потратил (свою старенькую библиотечку для работы с регэкспами я где-то посеял при переездах). А на Руби это выглядит так:

===
# Формируем bat-файл для скачивания контента
f=File.new("index.html","r")

f.each do |a|
    if b=a[/[\-|\w]+\.zip/] { puts "wget --http-user=sfy --http-password=****** http://6years.net/MedPredmets/blanki/" + b }
end
f.close

===
# Перетолмачиваем индекс-файл
File.new("index.html","r")

f.each do |a|
    if a[/[\-|\w]+\.zip/] {
        a[/http\:\/\/6years.net\/MedPredmets\//]=""
    }
    puts a
end
f.close
===.

Фсё. Удобный язык, чесслово.

А, да, забыл сказать, про ключи wget -r, --level и -A я знаю. На этом сайте - не проходит.

Date: 2012-04-21 11:20 pm (UTC)
From: [personal profile] mak1
кажется мне, что на перле это будет выглядеть примерно так же...

Date: 2012-04-22 12:51 pm (UTC)
From: [personal profile] mak1
а что, собственно, это оператор делает? (я руби не знаю, если что:)

Date: 2012-04-22 03:25 pm (UTC)
From: [personal profile] mak1
чисто на повыпендриваться вечером в воскресенье, когда делать нечего:)

open FH, "index.html";
my @a = ;
my @r = map {(/\w+\.zip/)} @a;
foreach $i (@r) { 
print "wget --http-user=sfy --http-password=****** http://6years.net/MedPredmets/blanki/$i\n"; 
}

map { s/http\:\/\/6years.net\/MedPredmets\/// } grep { /\w+\.zip/ } @a;
print @a;


Date: 2012-04-22 03:26 pm (UTC)
From: [personal profile] mak1
убиться веником. если писать
open FH, "
[Error: Irreparable invalid markup ('<index.html";>') in entry. Owner must fix manually. Raw contents below.]

убиться веником. если писать
<pre>
open FH, "<index.html";
</pre>
то никакие тэги не помогают из-за '<'...

Date: 2012-04-22 04:26 pm (UTC)
From: [personal profile] mak1
оно ж внутри блока pre. зачем там внутри еще чем-то мудрить, не понимаю...

Date: 2012-04-22 04:29 pm (UTC)
From: [personal profile] mak1
так и C со строками работать умеет:)
красоты не Руби не вижу... кажется мне, что так со строками работать - жутко неэффективно. впрочем, на руби не писал, может и нет:)

Date: 2012-04-22 09:25 pm (UTC)
From: [personal profile] mak1
блин. и ведь придется посмотреть, вторая рекомендация уже:)
есть ссылка на какой-нть толковый учебник?

Date: 2012-04-23 07:43 pm (UTC)
From: [personal profile] mak1
спасибо

Date: 2012-04-23 08:49 pm (UTC)
From: [identity profile] dorjechang.livejournal.com
Когда ruby первый раз увидел, так аж прям влюбился. Но с тех пор воюю сам с собой — ruby или python.

:)

Date: 2012-04-24 10:36 am (UTC)
From: [identity profile] sfy-y.livejournal.com
RoR погляди, и выбор придёт сам. ;) Уникальная штука, логичная и удобрая.

Date: 2012-04-24 05:56 pm (UTC)
From: [identity profile] dorjechang.livejournal.com
Ха! Юр, иы всерьёз полагаешь, что я за почти 6 лет не слышал про RoR и не нашёл времени на это посмотреть? :)

RoR не облегчает выбора, ибо есть Django.

Проводил тесты на друзьях, которые не знают ни python, ни ruby: один и тот же код на python понятнее, нежели на ruby (я не удивлён).

Google предпочли python.


Но я всё равно обожаю ruby :)

Date: 2012-04-24 06:02 pm (UTC)
From: [identity profile] sfy-y.livejournal.com
М.б. философию RoR не грокнул? Про это далеко не все авторы пишут.

Вот хорошая книжка по RoR-3: http://russian.railstutorial.org/chapters/beginning

Date: 2012-04-24 06:05 pm (UTC)
From: [identity profile] dorjechang.livejournal.com
Не в том дело, Юр. Я говорю о чистом языке. Вот представь, что нету никаких фреймворков и библиотек, а я ваяю супер−мега−инновационный нанопродукт :) Вот тут и запаришься, что же выбрать — ruby или python? Только не говори, что выбирать надо то, что знаешь лучше — я свои знания что в одном, что в другом, оцениваю примерно одинаково (херово :)))

Date: 2012-04-24 06:50 pm (UTC)
From: [identity profile] sfy-y.livejournal.com
В таком "аксепте" я бы выбрал С++ без фреймворка. Знаю его хорошо, но дело не в этом, он банально эффективнее. :)

У меня же речь идёт о глубоком макетировании конкретной задачи: автоматизация клиники с выходом на финансовые модели страховой медицины.

Profile

sfy: (Default)
sfy

December 2013

S M T W T F S
1234567
891011121314
15161718192021
22232425262728
2930 31    

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 2nd, 2026 11:58 am
Powered by Dreamwidth Studios