Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Re^3: hash to differentiate type and tokens

by Anonymous Monk
on Jul 13, 2011 at 11:05 UTC ( #914097=note: print w/replies, xml ) Need Help??


in reply to Re^2: hash to differentiate type and tokens
in thread hash to differentiate type and tokens

A hash associates one key with one value, so this is what you have in %hash

my $str='finding related pages on the world wide web the web'; my %hash=split(/\s+/,$str); use DDS; Dump( \%hash ); __END__ $HASH1 = { finding => 'related', pages => 'on', the => 'web', wide => 'web' };
What do you want %hash to contain?

Replies are listed 'Best First'.
Re^4: hash to differentiate type and tokens
by sarvan (Sexton) on Jul 13, 2011 at 11:25 UTC
    Hi,
    #! /usr/bin/perl use strict; use warnings; my $str1='It is a guide to action which ensures that the military alw +ays obey the commands of the party.'; chomp($str1); my $str2='It is a guide to action that ensures that the military will +forever heed Party commands is a guide.'; chomp($str2); my @arr1=split(/\s+/, $str1); my $n_occur_in_str1=0; my $n_occur_in_str2=0; print "-"x60,"\n"; print "nth Match\tNo of occurence\t\tMatched Pattern\n"; print "-"x60,"\n"; for(my $i=0; $i<$#arr1;$i++) { my $t1="$arr1[$i] $arr1[$i+1] $arr1[$i+2]"; my @pattern_word_count=split(/\s/, $t1); my $space_count=@pattern_word_count; if($space_count == 3) { if($str2=~/$t1/) { my $occurence=`echo $str2 | grep -o '$t1' |wc - +l`; chomp($occurence); print $i+1,"\t\t",$occurence,"\t\t\t$t1\n"; $n_occur_in_str2+=$occurence; $n_occur_in_str1++; } } } print "\n\nTotal no of occurence in str1 : $n_occur_in_str1\n"; print "\n\nTotal no of occurence in str2 : $n_occur_in_str2\n";

    in the above code i used an array to store the splitted words from sentence and then use each words for further processing

    Here, the problem is when i have repeated words, unwantedly i do computation for same words. so to avoid tat i have been advised to store the words in a hash rather than an array.

    But, i m not clear how i can do that

      in the above code i used an array to store the splitted wor

      Oh, now I remember, this is Comparison between keys in hash all over again

      Ask yourself why anyone would help someone who 1) ignores their advice 2) ignores their questions 3) repeat the same thing, repeatedly?

      I tried to help you before, but every time its either like pulling teeth or like talking to a wall

        Hi Anonymous Monk,

        Sorry, if i did anything wrong. I dint repeat the question. what i was saying is, i just want to know that it is possible to replace the array by hash to avoid duplication. thats all

        Thanks for the advise. I will try it.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://914097]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others examining the Monastery: (4)
As of 2023-12-10 20:01 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    What's your preferred 'use VERSION' for new CPAN modules in 2023?











    Results (41 votes). Check out past polls.

    Notices?