|
|
| Welcome to the Monastery | |
| PerlMonks |
Answer: How can I split on a string except when inside quotes? |
| ( #128065=categorized answer: print w/ replies, xml ) | Need Help?? |
|
Q&A > regular expressions > How can I split on a string except when inside quotes? contributed by Anonymous Monk
This doesn't handle all the subtle things (backslashes, single-quotes, etc) that Text::ParseWords does, but it works for the simple cases, and produces your expected output exactly (quotes intact):
my @items = ($string =~ /(".*?"|\S+)/g);
|
|
||||||||||||||||||