字符串数据列(推文)如下所示:
A
1 An example string with @username in it
2 RT @AwesomeUser says @username is awesome
“substrings”列(Twitter屏幕名称)的外观如下:
B
1 username
2 AwesomeUser
我想使用一个公式来计算从B1、B2等单元格中提取的子字符串在A列字符串中出现的次数。例如:搜索B1的公式将返回“2”,搜索B2将返回“1”。
我不能这样做:
=COUNTIF(A:A, "username")
因为COUNTIF只查找字符串,而不是子字符串。这个公式总是会返回"0"。
这里有一个我认为可以做到的公式:
=SUMPRODUCT((LEN(A:A)-(LEN(SUBSTITUTE(A:A,"username",""))))/LEN("username"))
很遗憾,列B中有16000个条目,而列A中有数万个条目,因此即使在高性能PC上计算字符也不起作用(而且函数返回的结果可疑)。我考虑使用:=COUNTIF(A:A, "*username*")
但是COUNTIF需要带有星号运算符的字符串;由于数据量很大,我需要使用单元格引用。
我的问题是:有人知道我如何使用公式吗?如果使用COUNTIF,我如何在语句的条件部分中获得单元格引用(或者使用函数替换COUNTIF语句的条件部分中引用的单元格内的字符串)?
我知道我可以解析数据,但我想知道如何在Excel中完成它。