我试图计算子字符串在Excel中的字符串数据列中出现的次数.请参阅以下示例.
字符串数据列(推文)如下所示:
A
1 An example string with @username in it
2 RT @AwesomeUser says @username is awesome
Run Code Online (Sandbox Code Playgroud)
带有"substrings"(Twitter屏幕名称)的列如下所示:
B
1 username
2 AwesomeUser
Run Code Online (Sandbox Code Playgroud)
我想使用公式来计算来自B1,B2等的子字符串出现在A列的字符串中的次数.例如:搜索B1的公式将返回"2"并且搜索B2将返回"1".
我不能这样做:
=COUNTIF(A:A, "username")
Run Code Online (Sandbox Code Playgroud)
因为COUNTIF只查找字符串,而不是子字符串.该公式将始终返回"0".
这是我认为可以做到的公式:
=SUMPRODUCT((LEN(A:A)-(LEN(SUBSTITUTE(A:A,"username",""))))/LEN("username"))
Run Code Online (Sandbox Code Playgroud)
不幸的是,我在B列中有16,000个条目,在A中有数万个,因此即使在高功率PC上计数字符也不起作用(同样,该函数返回的结果也是可疑的).
我想过使用:
=COUNTIF(A:A, "*username*")
Run Code Online (Sandbox Code Playgroud)
但COUNTIF需要一个带星形运算符的字符串; 由于数据量的原因,我需要使用单元格引用.
我的问题:有谁知道如何使用这个公式?如果使用COUNTIF,如何在语句的条件部分中获取单元格引用(或使用函数替换COUNTIF语句的条件部分中引用的单元格中的字符串)?
我知道我可以解析数据,但我想知道如何在Excel中执行此操作.