Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re^6: How to avoid an alphabet and integer next to it in a string?

by runrig (Abbot)
on Mar 21, 2014 at 18:45 UTC ( #1079330=note: print w/ replies, xml ) Need Help??


in reply to Re^5: How to avoid an alphabet and integer next to it in a string?
in thread How to avoid an alphabet and integer next to it in a string?

The first code says Forbidden chars again.
So show the input and output, quit making us guess (and when I say 'output' I mean the new string, not the number you're trying to calculate).

As far as which approach, don't worry about it. Just pick one (as long as it works).

  • Comment on Re^6: How to avoid an alphabet and integer next to it in a string?

Replies are listed 'Best First'.
Re^7: How to avoid an alphabet and integer next to it in a string?
by piscean (Acolyte) on Mar 21, 2014 at 18:52 UTC
    Input was
    my $molform = <STDIN>;
    C6H9 and Output was:
    ------Please enter single letter elements in caps only------ Enter the molecular formula of the compound = C6H9 Forbidden chars The molecular weight of the above compound is =
      Think about it. How does that help (read again what output I asked for)? When you're trying to determine input and output to something...just print the something...
      my $molform = <STDIN>; print "Molform before: [$molform]\n"; s/\s+$//, s/H(?![a-z])\d*//g for $molform; print "Molform after: [$molform]\n";
      Although hazylife may have nailed the problem...you need to learn how to provide useful debugging information.
        Using your code, input as C6H9
        ------Please enter single letter elements in caps only------ Enter the molecular formula of the compound = C6H9Hg Molform before: [C6H9 ] Molform after: [C6] The molecular weight of the above compound is = 72.0642

        Using your code, input as C6H9Hg

        ------Please enter single letter elements in caps only------ Enter the molecular formula of the compound = C6H9Hg Molform before: [C6H9Hg ] Molform after: [C6Hg] Molform after: [C6Hg] The molecular weight of the above compound is = 272.6542
        Thanks a ton! Yes, it worked!

      chomp(my $molform = <STDIN>);
        Forget chomp, just do:
        $molform =~ s/\s+$//;

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others scrutinizing the Monastery: (6)
As of 2016-06-24 23:28 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    My preferred method of making French fries (chips) is in a ...











    Results (322 votes). Check out past polls.