11.1 FIND 和 SEARCH


# FIND 和 SEARCH 2019-11-08 分类:查找匹配函数 阅读(28) 评论(0) 阅读约需5分钟## FIND FIND(, , [ [], []])返回一个文本字符在另一个文本字符中的起始位置,FIND区分大小写。

  1. FIND(“a”,”apple”) 结果是1
  2. FIND(“A”,”apple”,,0) 结果是0
    FIND和下面介绍的SEARCH的第四参数都是可选的,当找不到指定文本时函数会返回第四参数,此时如果省略第四参数就会报错,这和Excel的行为一致。实际使用过程中,为了避免公式报错,第四参数通常不能省略。另外,FIND不支持通配符,如果想执行模糊查找,可以参考SEARCH和CONTAINSSTRING。## SEARCH SEARCH ( , , [] [])返回一个文本字符在另一个文本中的起始位置。SEARCH不区分大小写。SEARCH支持以下通配符规则:
  • 问号(?):问号匹配任何单个字符;。如果你想找到的是问号或星号本身,请在字符前键入一个波浪号(~)。
  • 星号(*):星号匹配任何字符序列。
  1. SEARCH(“*e”,”apple?”,,-1) 结果是1
  2. SEARCH(“?e”,”apple?”,,-1) 结果是4
  3. SEARCH(“~*”,”apple?”,,-1) 结果是-1 SEARCH不区分大小写,搜索“N”将找到“N”或“n”的第一个匹配项。例如,下面的公式返回4,因为“n”是单词“printer”中的第四个字符。=SEARCH(“n”,”printer”)SEARCH区分重音。搜索“á”将找到第一个出现的“á”,但不会搜索“a”、“à”或大写的“A”、“Á”。你还可以使用SEARCH函数确定字符或文本字符串在另一个文本字符串中的位置,然后使用MID函数返回文本,或使用REPLACE函数更改文本。IFERROR可以为省略第四参数的公式容错,比如下面的公式查找字符“-”在列中的位置,如果没有找到字符串,则返回-1。= IFERROR(SEARCH(“-“,[PostalCode]),-1)