观察数据表中志愿者名单,姓名之间由顿号隔开,而最后一个人名后不加顿号,所以人数等于顿号的个数加上1。
如何求得顿号的个数?
思路:利用字符数之间的差求得顿号的个数。如项目A为例,其志愿者名单的单元格全部字符数,减掉去掉顿号的字符数,就是顿号的个数。
字符数:字符是指计算机中使用的字母、数字、汉字、符号等等,每一个字母、数字、汉字、符号的字符数为1。比如,数字"2"的字符数为1,数字"520"包含3个数,字符数就是3。在文章中的顿号,每个逗号字符数是1。
第一步:计算各项目志愿者的字符数
以项目A志愿者名单为例,C3的字符数=LEN(C3)=14,结果见表头为”字符数”的蓝色列
第二步:替换顿号并计算替换顿号后志愿者的字符数
在以往的案例中提到过常用方法有两种,一种是用菜单栏查找和替换的功能,另一种是用函数SUBSTITUDE()。根据实际情况,本次案例使用后者。
以项目A志愿者名单为例,C3替换顿号后的字符数=LEN(SUBSTITUDE(C3,"、 ","")),结果见表头为"替换顿号后字符数"的绿色列。
第三步:综上两步结果求差加一即得人数
以项目A志愿者名单为例,在单元格D3输入公式LEN(C3)-LEN(SUBSTITUTE(C3,"、",""))+1
表哥TIPS:如果志愿者名单中只有汉字,如项目C中,两个人的名字都是中文名,则公式也可用LENB(C3)-LENB(SUBSTITUTE(C3,"、",""))+1
拓展内容:
函数LEN()与LENB()形似,用法也类似,唯一区别在于前者用于计算字符个数,而后者用于计算字节个数。
字节个数与字符个数有何区别?
简单理解就是英文字节数与字符数一致,而中文字节数是字符数的两倍。
举个例子:
志愿者名单"小明、小红、小黑、Nancy-J",由6个汉字、6个英文字母、3个中文符号及1个英文符号组成。
英文字母及英文符号的字符数与字节数一致,所以英文的字符数与字节数为6+1=7个字符=7个字节。
中文汉字及中文符号的字节是字符数的两倍,则中文的字符数=6+3=9个字符=18个字节。
汇总中文与英文及其符号后,志愿者名单的字符数为7+9=16个,字节数为7+18=25个。
善于利用字符与字节中英文的计数区别,能快速帮我们解决字符串的问题。
如果你正好遇到相关的麻烦,不妨用此小技巧来试一试。