gpt4 book ai didi

PHP preg_match : any letter but no numbers (and symbols)

转载 作者:行者123 更新时间:2023-12-02 06:18:02 27 4
gpt4 key购买 nike

我正在尝试为表单中的字段设置验证规则,以检查输入是否仅包含字母。

起初我尝试创建一个函数,如果字符串中没有数字则返回 true,为此我使用了 preg_match:

function my_format($str)
{
return preg_match('/^([^0-9])$', $str);
}

无论我看多少次 php 手册,我似乎都无法理解如何创建我想要的模式。我做的有什么问题吗?

但我想扩展这个问题:我希望输入文本包含任何字母,但不包含数字或符号,如问号、感叹号以及您可以想象的所有符号。但我想要的字母不仅是 a-z,我还想要带有各种重音的字母,如西类牙语、葡萄牙语、瑞典语、波兰语、塞尔维亚语、岛语...

我想这不是一件容易的事,而且很难或不可能用 preg_match 来完成。是否有任何库可以满足我的确切需求?

最佳答案

如果您使用的是 utf-8 编码输入,请转到 unicode regex .使用 u 修饰符

这个将匹配仅由字母和任何类型的空白/不可见分隔符组成的字符串:

preg_match('~^[\p{L}\p{Z}]+$~u', $str);

关于PHP preg_match : any letter but no numbers (and symbols),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20776914/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com