Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery

Re: splitting punctuation in a text

by injunjoel (Priest)
on Aug 11, 2008 at 16:59 UTC ( #703696=note: print w/ replies, xml ) Need Help??

in reply to splitting punctuation in a text

I would suggest using a word boundary \b. for instance...

#!/usr/bin/perl -w use strict; use Data::Dumper; my $line = "earth, wind & fire"; my @chunks = split /\b/, $line; print Dumper(\@chunks);
Which produces what you want... well close. If you don't want the spaces around your punctuation marks this
#need the grep to filter for truth! #basically checking if #the element is defined/filled-in/not-blank my @chunks = grep{$_} split /\b|\s/, $line;
should do the trick.

Update! Upon re-reading your post I am a bit unclear... Do you want to keep the punctuations or not?
if not
#either this my @no_punct = $line =~ /(\w+)/g; #or this my @no_punct = grep{$_}split /\W|\s/, $line;
will work.

"I do not feel obliged to believe that the same God who endowed us with sense, reason and intellect has intended us to forego their use." -Galileo

Comment on Re: splitting punctuation in a text
Select or Download Code

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (3)
As of 2015-10-07 03:20 GMT
Find Nodes?
    Voting Booth?

    Does Humor Belong in Programming?

    Results (170 votes), past polls