【发布时间】:2013-11-15 14:32:33
【问题描述】:
我需要编写一个正则表达式来验证拉丁文和西里尔文域名。 我写了这个函数,但它不适用于西里尔语域。 告诉我怎么了?
function isDomain($url)
{
if (mb_strlen($url)==0) return false;
$url = mb_strtolower(trim($url));
$abc = 'абвгдеёжзийклмнопрстуфхцчшщэьъыюя';
if(!preg_match('/^(['.$abc.'a-z0-9\.-]{1,64})?\.(?:рф|ru|su|com|net|org|mil|edu|arpa|gov|biz|info|aero|inc|name|[a-z]{3})$/i',$url))
{
return FALSE;
} else {
return TRUE;
}
}
【问题讨论】:
-
问题是缺少 mb_internal_encoding ('UTF-8');
标签: php regex validation