Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - woolfs

Страницы: [1]
1
Perl / непонятная конструкция Perl
« : 15 Апреля 2008, 08:21:51 »
спасибо за отклик, но этот пример работает :
вот более полный фрагмент
my $t1 = new Benchmark;
  my $ngram;
  ($_,$ngram) = @_;  #$ngram contains reference to the hash we build
    # then add the ngrams found in each word in the hash
  my $word;
  foreach $word (split("[$non_word_characters]+")) {
    $word = "_" . $word . "_";
            print "\\ntest=".$word;
    my $len = length($word);
    my $flen=$len;
    my $i;

    for ($i=0;$i<$flen;$i++) {
     
   $$ngram   {substr($word,$i,5)}++ if $len > 4;
   $$ngram{substr($word,$i,4)}++ if $len > 3;
   $$ngram{substr($word,$i,3)}++ if $len > 2;
   $$ngram{substr($word,$i,2)}++ if $len > 1;
   $$ngram{substr($word,$i,1)}++;
      $len--;
    }
  }

2
Perl / непонятная конструкция Perl
« : 15 Апреля 2008, 07:47:32 »
Добрый день!
Портирую функционал с Perl под .Net
Во всех ньюансах Perl, еще слабо разбираюсь.
Прошу объяснить на псевдокоде смысл следующей конструкции:
$$ngram{substr($word,$i,4)}++ if $len 3;

где ngram это хэш,  а $len=length($word);

В конструкции непонятен смысл постфиксного условия if
и чем будет отличаться идея, если бы он стоял в начале конструкции?

Страницы: [1]