
String::Splitter - Find all possible string splits and unique substrings.

Version 0.3

Find all possible string splits and unique substrings.
use String::Splitter;
my $ss = String::Splitter->new();
my $all_splits = $ss->all_splits("ABCD");
# $all_splits == [
# [ 'A', 'B', 'C', 'D' ],
# [ 'AB', 'C', 'D' ],
# [ 'A', 'B', 'CD' ],
# [ 'ABC', 'D' ],
# [ 'A', 'BC', 'D' ],
# [ 'AB', 'CD' ],
# [ 'A', 'BCD' ],
# [ 'ABCD' ]
# ]
my $all_substrings = $ss->all_substrings("ABCA");
# $all_substrings == [
# 'A',
# 'ABC',
# 'BC',
# 'ABCA',
# 'B',
# 'BCA',
# 'C',
# 'CA',
# 'AB'
# ];
Module is utf8 safe. You can
my $results = $ss->all_splits("☺☻");
to get
[
[ '☺', '☻' ],
[ '☺☻' ]
]
Amount of possible splits is equal to
2 ** ( length($string) -1)
so be careful with length as this grows REALLY fast!!

Creates new object.
my $results = $ss->all_splits("ABCD");
Returns ArrayRef of ArrayRefs with all possible splits.
Carp::confess will be called if param is missing or zero length.
my $results = $ss->unique_substrings("AABCDAA");
Returns ArrayRef of all possible unique substrings.
Carp::confess will be called if param is missing or zero length.

Pawel (bbkr) Pabian, <cpan at bbkr.org>
Private website: http://bbkr.org
Company website: http://implix.com

Please report any bugs or feature requests to bug-string-splitter at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=String-Splitter. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

You can find documentation for this module with the perldoc command.
perldoc String::Splitter
You can also look for information at:


Copyright 2008 Pawel bbkr Pabian, all rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.