http://www.perlmonks.org?node_id=1004288

hey_frind has asked for the wisdom of the Perl Monks concerning the following question:

Hello, I have a input file which is something like this

test 1: 000000 test 2: 111111 test 3: 000011111 test 4: 1111111000 test 5:10001001110000011 ..... so on

My requirement is i need to read each string (always in binary) and gives one of the third possible result. possible results are PASS, FAIL, CLEAN

Criteria is:

1) if the sting has all 0's or all 1's (like test 1, and test 2) I should output test 1, test 2 as PASS

2) if the string starts with 0 and continue to be 0's and then transitions to 1 and always stays 1 (like test 3), i would say result is CLEAN. and vice-versa (ie starts with 1 and transitions to 0 and stays 0 (like in test 4), I would result is CLEAN.

3) if the string is combinations of 0's and 1's (like test 5) i would sat result is FAIL.

How do I do this in perl? thanks, Natasha