- preg_match: documentation ( source)
<?php
$re = "/^[a-zA-Z ,.\p{Han}]+$/u";
$tests = array(
'Mr Smith',
'Mr. Smith',
'Mr. 123 Smith',
'姓名',
'tom!!!',
'Mary@',
'May#',
'john$',
);
foreach ($tests as $test) {
if (preg_match($re, $test) !== 1) {
echo $test . ' failed' . PHP_EOL;
}
}