- preg_match: documentation ( source)
<?php
$postcode = 'SW196QX';
// Validate the postcode
if (preg_match('/^GIR 0AA)|((([A-Z-[QVX]][0-9][0-9]?)|(([A-Z-[QVX]][A-Z-[IJZ]][0-9][0-9]?)|(([A-Z-[QVX]][0-9][A-HJKPSTUW])|([A-Z-[QVX]][A-Z-[IJZ]][0-9][ABEHMNPRVWXY])))) [0-9][A-Z-[CIKMOV]]{2})$/', $postcode) === 1)
{
echo 'Invalid';
} else
{
echo 'Valid';
}