Hi Finalfire, On Sunday 09 May 2010 20:03:44 Finalfire wrote: > Hello guys! I'm skilling regex using Perl and i've some trouble about > a simple try: > i've a string like: > > $string = "HELLOOOOAAABBCCCC"; > > and i want to manipulate in that way: HELL4O3ABB4C;You can simply > notice that when i have 3 or more occurrences of a character, i want > to substitute all the occurrences and write "nC" where n is how times > the character C is found on a string. > > So, in regex (i think there are so many way to do it but i wish to do > with regex, just skilling...) i write: > > $string =~ s/(.)\1\1+/$1/; > > but how can i get the number of the occurrences in the string of that > pattern?
You should use http://perldoc.perl.org/functions/length.html and the /e flag to s///. Untested: $string =~ s/((.)\2\2+)/length($1).$2/ge > > Thanks alot guys, hope on your reply Hope it helps. Regards, Shlomi Fish > Have a nice time! > > Finalfire -- ----------------------------------------------------------------- Shlomi Fish http://www.shlomifish.org/ http://www.shlomifish.org/humour/ways_to_do_it.html God considered inflicting XSLT as the tenth plague of Egypt, but then decided against it because he thought it would be too evil. Please reply to list if it's a mailing list post - http://shlom.in/reply . -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/