go ahead... be a heretic | |
PerlMonks |
comment on |
( [id://3333]=superdoc: print w/replies, xml ) | Need Help?? |
First, since there is no seperator, I would not first look to split, but rather to m//g in list context:
(This version just skips any part that does not match /[A-Z][a-z]*/; season to taste.) Dealing with "AStringWithFTP" is trickier, at least without a dictionary. The only heuristic I may suggest is to treat sequences of upper-case characters as a word of its own if in final position or if preceding an uppercase-lowercase sequence:
That this is a heuristic is clear from noting that "ACString" is split as "AC", "String", and not as "A", "C", "String". But frankly, without a dictionary, I don't think there is a real solution. Update: Oops, pasted the wrong code. Fixed now. Also added prints to make it easier to test that it really is the code I meant to post ... Update2: Err, pasted the wrong right code too. Sorry, salva, I did not mean to steal it. /me *blushes* (Fixed now.)
print "Just another Perl ${\(trickster and hacker)},"
In reply to Re: How to split CamelCase?
by Sidhekin
|
|