I do not understand your specification. You state that I want only the patterns that has more than 2 consecutive 1's in the string, no all 0's, no "010110" cases.
Please elaborate what you mean by "no all 0's" (a string that has more than 2 consecutive 1's can not have all 0's). Also what do you mean by "no '010110' cases"? ("010110" does not have more than 2 consecutive 1's).
You say that the output should be "01110","111". I assume you meant that "111" should be "1111" since "111" is not in the array.
Also please explain why "01001110" should not match. It contains 3 consecutive 1's.
The following regular expression works for your listed requirements (although I suspect that the requirements are not exhaustive).
if($string =~ /([01]*111[01]*)/){ print "$string\n" } #output #01110 #1111 #01001110
In reply to Re: matching pattern question?
by zek152
in thread matching pattern question?
by BhariD
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |