 <p>Try this:</p> <pre><code>/\b\w{3,16}\b/ </code></pre> <p>Explained:</p> <ul> <li><code>\b</code> matches a word boundary</li> <li><code>\w</code> matches a word character</li> <li><code>{3,16}</code> applies to the <code>\w</code> and it indicates that at least 3 and at most 16 characters should be matched.</li> </ul> <p>FYI: I omitted the start anchor (<code>^</code>) and end anchor (<code>$</code>) from the regex you noted in your question because it seems like you want to find matches with longer strings of text as input and the anchors would restrict the matching to only instances where the entire input string matched.</p> <p>UPDATE:</p> <p>Here is the proof that this regex works:</p> <pre><code>&lt;?php $input = 'rjm1986 * SinuhePalma * excel2010 * Jimineedles * 209663603 * C6A7XR * Snojog * XmafiaX * Cival2 * HitmanPirrie * MAX * 4163016 * Dredd23 * Daddy420 * mattpauley * Mykillurdeath * 244833585 * KCKnight * Greystoke * Fatbastard * Fucku4 * Davkar * Banchy2 * ET187 * Slayr69 * Nik1236 * SeriousAl * 315791 * 216996334 * K1ra * Koops1 * LastFallout * zmileben * bismark * Krlssi * FuckOff1 * 1owni * Ulme * Rxtvjq * halfdeadman * Jamacola * LBTG1008 * toypark * Magicman6497 * Tyboe187 * Bob187 * Zetrox'; $matches = array(); preg_match_all('/\b\w{3,16}\b/', $input, $matches); print_r($matches); ?&gt; </code></pre> <p>Outputs:</p> <pre><code>Array ( [0] =&gt; Array ( [0] =&gt; rjm1986 [1] =&gt; SinuhePalma [2] =&gt; excel2010 [3] =&gt; Jimineedles [4] =&gt; 209663603 [5] =&gt; C6A7XR [6] =&gt; Snojog [7] =&gt; XmafiaX [8] =&gt; Cival2 [9] =&gt; HitmanPirrie [10] =&gt; MAX [11] =&gt; 4163016 [12] =&gt; Dredd23 [13] =&gt; Daddy420 [14] =&gt; mattpauley [15] =&gt; Mykillurdeath [16] =&gt; 244833585 [17] =&gt; KCKnight [18] =&gt; Greystoke [19] =&gt; Fatbastard [20] =&gt; Fucku4 [21] =&gt; Davkar [22] =&gt; Banchy2 [23] =&gt; ET187 [24] =&gt; Slayr69 [25] =&gt; Nik1236 [26] =&gt; SeriousAl [27] =&gt; 315791 [28] =&gt; 216996334 [29] =&gt; K1ra [30] =&gt; Koops1 [31] =&gt; LastFallout [32] =&gt; zmileben [33] =&gt; bismark [34] =&gt; Krlssi [35] =&gt; FuckOff1 [36] =&gt; 1owni [37] =&gt; Ulme [38] =&gt; Rxtvjq [39] =&gt; halfdeadman [40] =&gt; Jamacola [41] =&gt; LBTG1008 [42] =&gt; toypark [43] =&gt; Magicman6497 [44] =&gt; Tyboe187 [45] =&gt; Bob187 [46] =&gt; Zetrox ) ) </code></pre>