易表在线答疑技术与交流精华分享 → 如何判断一字符串在另一字符串出现的次数(YBIL原创)


  共有8900人关注过本帖树形打印复制链接

主题:如何判断一字符串在另一字符串出现的次数(YBIL原创)

帅哥哟,离线,有人找我吗?
喜爱易表
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:天使 帖子:178 积分:0 威望:0 精华:0 注册:2006/8/11 11:09:00
如何判断一字符串在另一字符串出现的次数(YBIL原创)  发帖心情 Post By:2006/8/16 19:16:00 [只看该作者]

[操作技巧]如何判断一字符串在另一字符串出现的次数

(本技巧原创人:YBIL)

  有时用户会需要判断某列的内容在另一列出现的次数,其实,我们利用Len函数和Substitute函数就可以实现;

  请看下面的例子:
egd文件下载
公式解析:

  表中[次数列]设置了这样的刷新公式:(Len([A])-Len(Substitute([A],[b],"")))/Len([b]),在解析这个公式之前,我们应该先了解Len函数和Substitute函数的功能:

  Len函数:返回字符串的长度;
  Substitute函数:在文本字符串中以新字符替换旧字符;

  我们一步步分解上面的公式:
  ● Len([A]):返回当前行[A]中的字符串的长度;
  (注释:假设[A]列内容为:aasdfggrwwqefgfh,那么这部分的公式的结果为“16”。)
  ● Substitute([A],[b],""):将[A]列中的字符串内出现的[b]列的内容用空白代替;
  (注释:其实,可以理解为相当于删除了[A]列中包含的[B]列的内容;比如:[A]列内容为:aasdfggrwwqefgfh,[B]列内容为:f,那么这部分公式的结果为“aasdggrwwqegh”,大家注意看一下,实际上相当于删除了f。)
  ● Len(Substitute([A],[b],"")):返回删除了[A]里中字符串包含的[b]列的内容后的字符串的长度;
  (注释:假设[A]、[B]列内容分别为:aasdfggrwwqefgfh、f,那么这部分的公式的结果为“13”。)
  ● Len([b]):返回当前行[b]中的字符串的长度;
  (注释:假设[B]列内容为:f,那么这部分的公式的结果为“1”。)

  ¤ 综合一下上面的公式,实际上就是:(16-13)/1=3;
  ¤ 之所以要除以Len([b])就是考虑到[b]列不为单个字母的情况,比如演示文件中的第二行;


 回到顶部