regex - regular expressions result multiplicity -
given regular expression "\d" , match each digit in "a123b456" (i.e. 1, 2, 3, 4, 5, 6). given regular expression "\d\d" , same teststring, seems match "12" , "45" - @ least http://regexpal.com/ says, regex evaluator created myself using c++ textbook (which uses boost/regex). why doesn't second 1 match "23" , "56", well, or, if behaviour correct one, why first 1 match each number? why doesn't second 1 match "23" , "56"? because that's overlapping match expecting regex give you. once part of string matched pattern, won't matched again same pattern. so, since 2 been included in previous match 12 , gone. regex move onto next character 3 . , following character, cannot see 3 included part of string matching \d\d . next substring matching pattern found @ 45 . try changing string to: "a1234b456" and 3 matches - 12 , 34 , , 45 . however, can ov