SEARCH函数用于字符串数组而不是单个字符串

时间:2014-07-29 13:25:48

标签: excel excel-formula

这对于任何Excel用户来说都是一个简单的 - 我正在尝试编写一个函数来检查一个单元格是否包含一个字符串数组中的至少一个字符串并返回一个TRUE / FALSE值。我现在的功能看起来像这样:

= IF(ISNUMBER(SEARCH({“cat”,“dog”,“clog”,“frog”,“log”,“beaver”},E2)),“og-word”,“something else” )

这个问题是SEARCH函数只检查数组中的第一个字符串,而不是检查所有字符串。任何快速修复?不确定这是否可行,因为我尚未检查,但我宁愿在那里抛出OR函数并多次重复SEARCH函数,为清洁起见。

提前感谢您的回复!

2 个答案:

答案 0 :(得分:1)

在评论#1#2中发布,这两项工作(正如我测试的那样)

=IF(SUM(COUNTIF(E2,"*"&{"cat","dog","clog","frog","log","beaver"}&"*")),"og-word","something else")

=IF(OR(ISNUMBER(SEARCH({"cat","dog","clog","frog","log","beaver"},E2))),"og-word","something else")

答案 1 :(得分:0)

如果 A1 包含 fat <​​/ em>或 thin

,则会返回 True
=NOT(LEN(SUBSTITUTE(SUBSTITUTE(A1,"fat",""),"thin",""))=LEN(A1))