今晚在写框架的表单验证类时,需要判断某个字符串长度是否在指定区间内,很自然地,想到了PHP中的strlen函数。
$str = 'Hello world!'; echo strlen($str); // 输出12
$str = '你好,世界!'; echo strlen($str); // GBK或GB2312下输出12,UTF-8下输出18
$name = '张耕畅'; $len = strlen($name); // 输出 FALSE,因为在UTF-8下三个中文占9个字节 if($len >= 3 && $len <= 8){ echo 'TRUE'; }else{ echo 'FALSE'; }
WordPress这么一段代码,借鉴如下:
$str = 'Hello,世界!'; preg_match_all('/./us', $str, $match); echo count($match[0]); // 输出9
但以上代码在UTF-8编码下并不能处理GBK/GB2312的中文字符串,因为GBK/GB2312的中文字符会被识别为两个字符而计算出来的中文字符数量会翻倍,于是我想到了这么一个办法:
$tmp = @iconv('gbk', 'utf-8', $str); if(!empty($tmp)){ $str = $tmp; } preg_match_all('/./us', $str, $match); echo count($match[0]);
以上本意是为了框架可以兼容多种编码格式,但一般在日常开发中,一个项目是已经可以确定为何种编码的,因此可以使用以下函数来方便地获取字符串长度:
int iconv_strlen ( string $str [, string $charset = ini_get("iconv.internal_encoding") ] )
本文向大家介绍C#实现中英文混合字符串截取的方法,包括了C#实现中英文混合字符串截取的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#实现中英文混合字符串截取的方法,是C#字符串操作中非常常用的一个方法。分享给大家供大家参考之用。具体方法如下: 具体功能代码如下: 希望本文所述方法对大家C#程序设计有所帮助。
本文向大家介绍PowerShell获取字符串长度的方法,包括了PowerShell获取字符串长度的方法的使用技巧和注意事项,需要的朋友参考一下 使用PowerShell可以很方便的计算字符串的长度。PowerShell是继承于Microsoft .NET Framework的,所以在.NET里面怎么获取到字符串的长度,在PowerShell中可以使用相同的方法。 我们知道在.NET中,可以使用St
问题内容: 你如何得到一个的长度?例如,我有一个定义如下的变量: 但是,我似乎无法在字符串上找到长度方法。 问题答案: 自Swift 4+起 只是: 原因。 (感谢Martin R) 从Swift 2开始: 在Swift 2中,Apple已将全局功能更改为协议扩展,这些扩展可与符合协议的任何类型匹配。因此,新语法为: (感谢JohnDifool的注意) 从Swift 1开始 使用计数字符方法: 直
本文向大家介绍python获取中文字符串长度的方法,包括了python获取中文字符串长度的方法的使用技巧和注意事项,需要的朋友参考一下 如下所示: 以上这篇python获取中文字符串长度的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。
本文向大家介绍如何获取PHP数组中最长字符串的长度,包括了如何获取PHP数组中最长字符串的长度的使用技巧和注意事项,需要的朋友参考一下 array_map函数可用于获取长度,而max函数可用于获取最长字符串的长度。 以下是相同的代码示例- 示例 输出结果 这将产生以下输出-