|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Artur Penttinen 2:5020/400 12 Dec 2003 13:13:20 To : all Subject : Re: Есть пара вопросов. -------------------------------------------------------------------------------- On Fri, 12 Dec 2003 00:46:04 +0300 Victor Speranskiy <Victor.Speranskiy@p82.f16.n5056.z2.fidonet.org> writes to All: VS> Hello All. К примеру есть строка: $e = "bl:blal:123:44" Мне нужно VS> получить последний элемент, я это реализую немного по кривому: VS> ($a,$s,$c,$d) = split(/:/,$e) Хотелось бы узнать как можно сделать VS> по менее кривому способу??? # perl -MBenchmark=:all -e '$a = "bl:blal:123:44"; timethese (1_000_000,{"1" => sub { return (split ":",$a)[-1]; }, "2" => sub { return $1 if ($a =~ m|:([^:]+)$|); }});' Benchmark: timing 10000000 iterations of 1, 2... 1: 5 wallclock secs ( 6.24 usr + -0.01 sys = 6.23 CPU) @ 160513.64/s (n=1000000) 2: 11 wallclock secs (10.10 usr + 0.00 sys = 10.10 CPU) @ 99009.90/s (n=1000000) wbw,artur (Kislev 17, 5764) -- Традиционное русское блюдо - каша в голове. --- ifmail v.2.15dev5.1 * Origin: Sonera corp (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/11489231faef3.html, оценка из 5, голосов 10
|