$re = '/PC\D*((([\dA-Z]{5})-){4}\g<3>)/';
$str = 'PC: WW533-S5T3B-53JJB-JTBT3-WZRBH
PS3: WW533-S5T3C-39JKB-STCT3-WZRRS
XBOX: WW533-S5T6F-65RJF-KXBT3-WZRW9
PC: CCCBB-X5JTB-5BB33-TJ3BJ-SK3KR
PS3: CCCBB-X5JTC-3HB53-ZJ5BJ-SK3ST
XBOX: CCCBB-X5JXF-6CF36-WR3BJ-SK3XW
PC: 5CKBB-K53BJ-CJTTT-JTJ3B-BHCSJ
PS3: 5CKBB-K53BK-BSTWT-STK3B-BHCTZ
XBOX: 5CKBB-K53FR-FKXTX-KXJ3B-BHCFW
PC: 5WWBJ-TWBJJ-KT3JB-TJBBB-CJ5KJ
PS3: 5WWBJ-TWBJK-JZ3KB-ZJCBB-CJ555
XBOX: 5WWBJ-TWBRR-RW6JF-WRBBB-CJ5T9
BL: TPS 1 GK: PS3: WCWBT-S3TTK-BSJK3-HT5TB-TWR9W WinPC/Mac/Linux: WCWBT-S3TTJ-CJJJ3-BT3TB-TWRWZ X360: WCWBT-S3TXR-FKRJ6-CX3TB-TWR3R
BL: TPS 1 GK: PS3: C5KTB-RTJ35-B93WT-HBKBB-WZWBX WinPC/Mac/Linux: C5KTB-RTJ33-C33TT-BBJBB-WZWJX X360: C5KTB-RTJ66-F56TX-CFJBB-WZWX5
BL: TPS 1 GK: PS3: C5CJB-WTT3W-TSJCT-ST5JJ-CKJKX WinPC/Mac/Linux: C5CJB-WTT3T-WJJBT-JT3JJ-CKJZ3 X360: C5CJB-WTT6X-XKRBX-KX3JJ-CKJZX
Nov 13
The Pre-Sequel:
PS3: C5CTT-3JJJK-B9JWJ-S35BJ-SZ99H WinPC/Mac/Linux: C5CTT-3JJJJ-C3JTJ-J33BJ-SZ9SK X360: C5CTT-3JJRR-F5RTR-K63BJ-SZ9KW
BL:TPS GK:
PS3: WW533-S5T3C-39JKB-STCT3-WZRRS
WinPC/Mac/Linux: WW533-S5T3B-53JJB-JTBT3-WZRBH
X360: WW533-S5T6F-65RJF-KXBT3-WZRW9';
preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);
// Print the entire match result
var_dump($matches);
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for PHP, please visit: http://php.net/manual/en/ref.pcre.php