Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 字符串中至少有一个大写字符_Php_Regex_Encoding_Utf 8_Preg Match - Fatal编程技术网

Php 字符串中至少有一个大写字符

Php 字符串中至少有一个大写字符,php,regex,encoding,utf-8,preg-match,Php,Regex,Encoding,Utf 8,Preg Match,如何检查字符串在编码UTF-8时是否至少包含一个大写字符?我用preg\u match preg_match('/[A-Z]/', $var) 但此代码不能处理所有字符,例如Ó,Ł 如何修复它?尝试添加\p{Lu}\p{Lt}模式,使用unicode标志: preg_match('/[A-Z\p{Lu}\p{Lt}]/u', $var) 使用unicode标志,尝试添加\p{Lu}\p{Lt}模式: preg_match('/[A-Z\p{Lu}\p{Lt}]/u', $var) A-Z正

如何检查字符串在编码UTF-8时是否至少包含一个大写字符?我用
preg\u match

preg_match('/[A-Z]/', $var)
但此代码不能处理所有字符,例如
Ó
Ł


如何修复它?

尝试添加
\p{Lu}\p{Lt}
模式,使用
unicode
标志:

preg_match('/[A-Z\p{Lu}\p{Lt}]/u', $var)

使用
unicode
标志,尝试添加
\p{Lu}\p{Lt}
模式:

preg_match('/[A-Z\p{Lu}\p{Lt}]/u', $var)

A-Z
正在ascii范围之间查找。您正在显示的字符超出该范围。使用
\p{Lu}
并使用unicode修饰符
u

preg_match('/\p{Lu}/u', $var)
演示:


有关更多unicode选项,请参阅。

A-Z
正在ascii范围之间查找。您正在显示的字符超出该范围。使用
\p{Lu}
并使用unicode修饰符
u

preg_match('/\p{Lu}/u', $var)
演示:


有关更多unicode选项,请参阅。

仍然不起作用:/@polakpolkovski抱歉,模式有点错误。再试一次。仍然不起作用:/@polakpolkovski抱歉,模式有点错误。再试一次,谢谢!很好,谢谢!工作正常。@TomUdding可能是OP来自那里,因为这里使用的是被接受/投票的答案。虽然可以解决这个问题的实际答案()没有解释,所以我认为这不是一个非常有用的dup。@TomUdding它很可能是来自那里的OP,因为这里使用的是被接受/向上投票的答案。虽然实际答案()可以解决这个问题,但没有任何解释,因此我认为这不是一个非常有用的dup。