Regular expression at least 2 out of 3 consecutive characters should be 1
Assume that string $s$ is in $L$. We will look at the last two characters of the string:


00, impossible, because this string could not be in $L$.
01, next character must be 1, new last two characters is 11.
10, next character must be 1, new last two characters is 01.
11, next character may be 1 or 0, new last two characters is 10 or 11.


Note that no matter your current state, you will always pass through the 11 state within two steps. Assuming that $s$ ended with 11, we get the following loop:

(1|(011))*


This will be the middle section of any string in $L$. All we need to do now is handle possible prefixes, making sure not to allow any with size &lt; 3:

(111|011|1011|11011)


And finally, possible suffixes (note the empty union to express that the suffix is optional):

(|0|01)


Now all that's left is to concatenate them:

(111|011|1011|11011)(1|(011))*(|0|01)