Показать сообщение отдельно

  #5  
Старый 22.12.2009, 18:22
astrologer
Постоянный
Регистрация: 30.08.2007
Сообщений: 773
С нами: 9840758

Репутация: 808


По умолчанию

Код:
sub decode_hash
{
  my $s = shift;
  
  $s =  substr($s, 4, 4) . substr($s, 0, 3) . substr($s, 9);
  $s =~ s/([m-z])/ord($1) - 109/ge;
  $s =  reverse $s;

  substr($s, 8, length($s) - 12) . substr($s, 0, 5);
}
Код:
<?php

function decode_hash($s)
{
  $m = array_combine(range('m', 'z'), range('0', '13'));

  $s = substr($s, 4, 4) . substr($s, 0, 3) . substr($s, 9);
  $s = strtr($s, $m);
  $s = strrev($s);
  
  return substr($s, 8, strlen($s) - 12) . substr($s, 0, 5);
}
Код:
// O_o

function decode_hash(s)
{
  s =
    (s.slice(4, 8) + s.slice(0, 3) + s.slice(9))
    .replace(/[m-z]/g, function(m)
    {
      return m.charCodeAt(0) - 109;
    }).split('').reverse().join('');

  return s.slice(8, -4) + s.slice(0, 5);
}

Последний раз редактировалось astrologer; 22.12.2009 в 23:39.. Причина: v2.0
 
Ответить с цитированием