【发布时间】:2012-03-22 19:06:01
【问题描述】:
我试图允许中文、日文(平假名、片假名、汉字)、韩文和基本上任何 unicode 字母。我希望第一个字符是一个字母
$pattern = '/\p{L}[\p{L}\p{N} _.-]+/u';
if(!preg_match($pattern, $subuser)){
//Error
}
但是我的模式似乎接受前面带有数字的字符串。当我添加时:
'/^\p{L}[\p{L}\p{N} _.-]+$/u'
没有接受任何字符串。我曾尝试使用 \p{Hiragana} 等,但没有真正的运气。有人看到我做错了吗?
【问题讨论】:
-
您的测试字符串是否包含字母、数字、ASCII 空格、ASCII 下划线、ASCII 句点和 ASCII 破折号以外的任何内容?
标签: php regex preg-match