反馈已提交

网络繁忙

计算字符串中指定字符个数

  • 文档创建者:axing
  • 历史版本:10
  • 最近更新:RosieY 于 2021-01-26
  • 1. 概述

    1.1 应用场景

    有时候我们希望找出字符串中指定字符共有多少个,如下面,A 或AA 字符的个数:
    2020-12-28_14-35-06.jpg

    1.2 解决思路

    将字符转化为数组,筛选出指定的字符,然后统计数组长度,即为指定字符的个数。或者通过指定字符分割处理后的原字符串来求出个数。

    2. 解决步骤

    2.1 单个指定字符

    1)将字符拆分为数组,拆分符为空:SPLIT(目标字符串, "")

    222
    2)通过 GREPARRAY( ) 函数筛选指定字符:GREPARRAY(上一步结果, item = "A")
    222

    3)通过 LEN( ) 函数来计算数组的项数:LEN(上一步结果)
    222

    4)综合起来,公式就是:LEN(GREPARRAY(SPLIT(目标字符串, ""), item = "A"))
    222

    2.2 单个或多个指定字符

    1)先拼接处理目标字符串,这里指定字符串为 AA:CONCATENATE("AA",目标字符串,附加符)

    在前面拼接一个指定字符串是为了防止目标字符串里完全没有指定字符串的情况下,第二步的分割函数也能生效

    在后面拼接一个附加符是为了防止指定字符串刚好在目标字符串的末尾,附加符可以是任何不包含于指定字符串的字符。

    222
    2)使用 SPLIT( ) 函数分割字符串,分割符为指定字符串:SPLIT(上一步结果,"AA")
    222

    3)通过 LEN( ) 函数来计算数组的项数:LEN(上一步结果)-2
    222

    4)综合起来,公式为:LEN(SPLIT(CONCATENATE("AA",目标字符串,"-"),"AA"))-2
    222

    3. 示例

    3.1 模板设计

    1)将数据集字段拖到单元格 B2、B3 ,如下图所示:

    2020-12-28_14-41-28.jpg

    2)依次选中 C2~F2、C3~F3 单元格,设置形态公式,如下表所示:

    单元格公式作用
    C2
    SPLIT(B2, "")将字符拆分为数组
    D2GREPARRAY(C2, item = "A")通过 GREPARRAY( ) 函数筛选指定字符
    E2LEN(D2)通过 LEN( ) 函数来计算数组的长度
    F2LEN(GREPARRAY(SPLIT(B2, ""), item = "A"))整合 C2~E2 公式
    C3CONCATENATE("AA",B3,"-")拼接处理目标字符串
    D3SPLIT(C3,"AA")使用 SPLIT( ) 函数分割字符串
    E3LEN(D3)-2通过 LEN( ) 函数来计算数组的长度
    F3LEN(SPLIT(CONCATENATE("AA",B3,"-"),"AA"))-2整合 C3~E3 公式

    2020-12-28_14-47-46.jpg

    3.2 效果预览

    1)PC端

    保存模板,点击PC端预览,如下图所示:

    2020-12-28_14-35-06.jpg

    2)移动端

    A210E782FA9BB3936FAC8464D9264B10.jpg

    4. 模板下载

    附件列表


    主题: 报表专题
    • 有帮助
    • 没帮助
    • 只是浏览
    中文(简体)

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭

    联系我们
    在线支持
    获取专业技术支持,快速帮助您解决问题
    工作日9:00-12:00,13:30-17:30在线
    页面反馈
    针对当前网页的建议、问题反馈
    售前咨询
    采购需求/获取报价/预约演示
    或拨打: 400-811-8890 转1
    qr
    热线电话
    咨询/故障救援热线:400-811-8890转2
    总裁办24H投诉:17312781526
    提交页面反馈
    仅适用于当前网页的意见收集,帆软产品问题请在 问答板块提问前往服务平台 获取技术支持