如何知道字符串中的所有字母都是大写?PHP:如何知道字符串中的所有字母都是大写?
回答
if(strcmp(strtoupper($str), $str) === 0) {
echo 'is uppercase';
}
使用mb_strtoupper
如有特殊字符编码参与。
使用strcmp
进行二进制安全字符串比较。
你可以尝试制作字符串的副本,该副本转换为大写,并将其与原始字符串:
public function isUpperCase ($string) {
return $string === strtoupper($str);
}
OR,一个更好的版本(这是多字节安全*)将是:
public function mb_isUpperCase ($string) {
$upper = mb_convert_case(
$string,
MB_CASE_UPPER,
mb_detect_encoding(
$string
)
);
return $string === $upper;
}
*请注意,mb_detect_encoding可能会失败,并返回false。在生产环境中,您应该向mb_detect_encoding提供可能的编码列表,或处理mb_detect_encoding失败的情况。
我只有多字节版本的问题是编码检测,这是一个非常困难的事情要做,并且如果它错误的话会破坏你的字符串。 +1的唯一真正的方式来做到这一点。 – 2010-03-08 21:33:37
同意。为这种情况增加了一点评论 – PatrikAkerstrand 2010-03-08 21:37:45
如果所有字符都是字母,并且它是ASCII字符串,则ctype_upper()可能是可能的。
如果它是一个很长的字符串,并且您不想制作副本,那么请走过字符串并查看每个字符的ascii值。如果它小于97,你就知道它全是大写字母。
- 1. 如何让字符串大写的所有字母?
- 2. 检测字符串中的所有大写字母
- 3. 将所有大写字母替换为小写字母,除了urlencoded字符串
- 4. SQL:如何创建将字符串中的所有大写字母都变为小写字母和小写字母的函数
- 5. C#字符串中所有字母字符的反向大小写
- 6. 如何检测字符串是否包含PHP中的1个大写字母
- 7. 函数检查字符串中的所有元音是否都是大写字母
- 8. 将字符串中的每一个其他字母都大写 - 列表中的每个其他字母大写
- 9. 将字符串转换为所有大写字母与std :: transform
- 10. 带大写字母和小写字母的字符串转换
- 11. 如何使文本字段中的所有内容都是大写字母/大写?
- 12. 字符串的首字母大写
- 13. 将句子中所有字母从大写字母转换为小写字母,除了所有大写字母都使用R
- 14. 如何从字符串中删除所有字母字符?
- 15. 如何反转字符串中每个字母的大小写?
- 16. 如何在使用Java的字符串中首字母大写?
- 17. 如何将字符串中的第一个字母大写?
- 18. 用大写字母拆分字符串
- 19. 以大写字母拆分字符串
- 20. 用大写字母拆分字符串
- 21. 如何在字符串中使用Javascirpt大写字母的第一个字母
- 22. 只识别带有大写字母和小写字母的字符串
- 23. java中两个字符串的大写字母的常见字符/字母
- 24. 删除空白字符串中的所有小写字母python
- 25. 如何检查,如果我的字符串以大写字母
- 26. 如何在字符串中拆分大写字母?
- 27. 如何从PHP中的字符串获取大写字母序列?
- 28. php大写字母大写字
- 29. 查找字符串中的所有大写字母 - 正则表达式C#
- 30. 如何使用TypeScript的强大功能检查字符串中的字母是否为大写字母?
如果它有数字呢? – SLaks 2010-03-08 21:27:24