in reply to Re^4: Structure number
in thread Structure number

its still not working. The code is not omitting pairs/lines with these alphabets :(

Replies are listed 'Best First'.
Re^6: Structure number
by AG87 (Acolyte) on Dec 02, 2010 at 09:25 UTC

    its done thank you so much for your help. I was making a mistake in array index :)

      Sir I have omitted the column containing alphabets but if a new 6th column is added into file, is it possible to modify the grep function? For example if the input file is

      536 ENERGY = -176.2 gag
      1 G 0 2 0 1
      2 G 1 3 533 2
      3 G 2 4 532 3
      536 ENERGY = -175.9 gag
      1 G 0 2 0 1
      2 G 1 3 533 2
      3 G 2 4 532 3

      The working code is

      open(MYFILE, $data_file) || die("Could not open file!"); { my $energy; while ( <MYFILE> ) { if ( /\bENERGY\b/ ) { ++$energy; next; } my ( $key, @fields ) = grep $_, split; for my $field ( @fields ) { if ( $field ne 'G' && $field ne 'A' && $field ne 'C' && $field ne +'G' ) { print WRITE "$key $field $energy\n"; } } } } close(MYFILE);

      How can I get the same output with 6th column (same as 1st column) added. As I cannot use if condition on it like i used for alphabets. Can you please guide/help me?