我希望我的用户只能写出名字和姓氏之间只有一个空格的希腊字符。我该如何更改此 PHP 代码来执行此操作?
!preg_match("/^[A-Za-z0-9_!@$]{1,50}$/", $newusername)
最佳答案
您需要使用 the /u
modifier使表达式可识别 Unicode,我更喜欢在指定此类内容时使用十六进制代码——很难区分 alpha (Α) 和 ay (A)。
According to Wikipedia ,Unicode block “希腊语和科普特语”使用从 0x370 到 0x3ff 的代码:
function checkGreek($newusername) {
if (preg_match("/^[\x{370}-\x{3FF} ]{1,50}$/u", $newusername)) {
echo "It's Greek to me";
} else {
echo "Non-Greek in there";
}
}
checkGreek("ΑΒ ΓΔ");
checkGreek("ΑΒ ΓΔ 123");
checkGreek("AB CD");
关于PHP: Signup > USERNAME with only Greek Characters and only one white space,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42992535/