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

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

Greetings,
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.

-InjunJoel
"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?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (15)
As of 2015-07-06 17:54 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (80 votes), past polls