MICROSOFT

EP05. “SEARCH Function SEARCH 函数”

首页 Microsoft 工具 Excel · Functions · Text · EP05
约 4 分钟· #EP05#Excel#Text
🔒 登录后可标记已读
  • SEARCH 函数跟 FIND 函数很像,都是找子字符串的位置
  • 差别是 SEARCH 不区分大小写,而且支持通配符(?*
  • 前置知识建议先看过 EP04 的 FIND 函数
  • 学完能理解两者该怎么选

重点内容


函数速查

函数语法用途例子
SEARCH=SEARCH(find_text, within_text, [start_num])不区分大小写找子串位置,支持通配符=SEARCH("soft","Microsoft") → 6

FIND 和 SEARCH 怎么选

函数是否区分大小写是否支持通配符例子
FIND区分不支持=FIND("soft","Microsoft")
SEARCH不区分支持 ?*=SEARCH("soft","Microsoft")

基础用法

=SEARCH("soft","Microsoft"),在 "Microsoft" 里找 "soft",结果是 6。


不区分大小写

=SEARCH("excel","Microsoft Excel"),不管 "excel" 大小写怎么写都能匹配到 "Excel"——这是跟 FIND 函数最大的差别。


问号通配符(?

? 代表任意一个字符。比如要找 "20" 加两位数字加某个后缀这种模式(像 "2020" 到 "2024" 这类年份格式),可以用 ? 占位匹配任意单一字符。


星号通配符(*

* 代表任意数量(含 0 个)字符。比如要匹配 "Microsoft" 后面跟任意内容再跟 "2024" 的字符串,可以写成 "Microsoft*2024" 这种模式。


起始搜索位置

  1. =SEARCH("o","Football"),默认从第 1 位开始找,结果是 5
  2. =SEARCH("o","Football",6),从第 6 位开始找 "o",结果是 7

学完你会

  • ✅ 能用 SEARCH 找出子字符串的位置,且不受大小写影响
  • ✅ 能用 ?* 通配符做模糊位置匹配
  • ✅ 能判断什么时候该用 FIND(需要区分大小写),什么时候该用 SEARCH

常见错误

  • 该用不区分大小写查找的场景却用了 FIND,导致大小写不一致时找不到结果
  • 通配符 ?* 用反:? 只匹配一个字符,* 匹配任意多个字符,混用会导致匹配范围错误
  • 文本里本身就含有 ?* 这两个符号时,SEARCH 会把它们当通配符解析,而不是字面字符,需要用 ~ 转义

Sources

Blog / Website:

  1. Search