在Google电子表格中,我想使用一个公式,如果某个单元格包含某些字母,它将输出某个文本或数字.
例如,如果我放置=IF(A1="Black";"YES";"NO")并且A1等于"黑色" - 它正确地输出"是".但是当我把=IF(A1="Bla";"YES";"NO")它输出"NO"时.有没有我可以使用的公式,我可以这样说=IF(A1 CONTAINS "Bla";"YES";"NO"),输出"是".
小智 156
你可以使用RegExMatch:
=IF(RegExMatch(A1;"Bla");"YES";"NO")
Run Code Online (Sandbox Code Playgroud)
pnu*_*uts 73
有些选项没有REGEXMATCH,因为你可能想要不区分大小写并且不想说blast或ablative触发a YES.使用逗号作为分隔符,如在OP中,暂时忽略IF条件:
首先非常类似于@ user1598086的答案:
=FIND("bla",A1)
Run Code Online (Sandbox Code Playgroud)
区分大小写但返回#VALUE!而不是NO和数而不是YES(两者都可以分别改为NO/YES).
=SEARCH("bla",A1)
Run Code Online (Sandbox Code Playgroud)
不区分大小写,所以对待Black和black平等.如上返回.
前者(后者等同于)表示在A1中的前三个字符后是否bla存在:
=FIND("bla",A1,4)
Run Code Online (Sandbox Code Playgroud)
返回一个数blazer, black,但#VALUE!对blazer, blue.
Bla只查找完整单词本身(即空格之间 - 不在'句子'的开头或结尾):
=SEARCH(" Bla ",A1)
Run Code Online (Sandbox Code Playgroud)
由于上面所有情况下的返回都是一个数字("找到",所以YES首选),或者#VALUE!我们可以使用ISERROR #VALUE!在IF公式中进行测试,例如采用上面的第一个例子:
=if(iserror(FIND("bla",A1)),"NO","YES")
Run Code Online (Sandbox Code Playgroud)
比regexmatch组件长,但组件很容易调整.
| 归档时间: |
|
| 查看次数: |
290346 次 |
| 最近记录: |