Regex really are the way to go (I however have to look up all the symbols becuase i never remebr what they mean)

i did a comparision test using a 1000 reps of

while (%i) { if (!$remove($$1-,0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,%s)) { } | dec %i } %s = $chr(32)
while (%i) { if ($regex($$1-,/^[0-9A-F ]+$/iS)) { } | dec %i }

the results were around 1.650 ticks for remove and regex was 0.195 thats like 8 to 9 times faster