<?php

$re = '~(?:\[|(?!^)\G)\s*\K[2-9AQTKJ][shcd](?=[^\]]*])~'; 
$str = "[As 4h 8s] [ As 4h ] [As4h] As [ 4h "; 
preg_match_all($re, $str, $matches);
print_r($matches[0]);