我正在尝试用 PHP 编写一个合理宽松的名称验证器,我的第一次尝试包括以下模式:// unicode 字母、撇号、连字符、空格$namePattern = \'/^([\\...
我正在尝试用 PHP 编写一个合理允许的名称验证器,我的第一次尝试包含以下模式:
// unicode letters, apostrophe, hyphen, space
$namePattern = "/^([\\p{L}'\\- ])+$/";
这最终被传递给对 的调用 preg_match()
。据我所知,这适用于普通的 ASCII 字母表,但似乎会遇到更复杂的字符,如 Ă 或 。
模式本身有问题吗?也许我期望 \p{L}
做的工作比我想象的要多?
或者这是否与输入传递的方式有关?我不确定这是否相关,但我确实确保在表单页面上指定了 UTF8 编码。
在 PCRE/PHP 中匹配 Unicode 字母字符
下载声明:
本站所有软件和资料均为软件作者提供或网友推荐发布而来,仅供学习和研究使用,不得用于任何商业用途。如本站不慎侵犯你的版权请联系我,我将及时处理,并撤下相关内容!