也应用于:
FINDB
FIND 用于查找其他文本字符串 (within_text) 内的文本字符串 (find_text),并从 within_text 的首字符开始返回 find_text 的起始位置编号。也可使用 SEARCH 查找其他文本字符串中的某个文本字符串,但是,FIND 和 SEARCH 不同,FIND 区分大小写并且不允许使用通配符。
FINDB 用于查找其他文本字符串 (within_text) 内的文本字符串 (find_text),并基于每个字符所使用的字节数从 within_text 的首字符开始返回 find_text 的起始位置编号。此函数用于双字节字符。也可使用 SEARCHB 查找其他文本字符串中的某个文本字符串。
语法
FIND(find_text,within_text,start_num)
FINDB(find_text,within_text,start_num)
Find_text 是要查找的文本。
Within_text 是包含要查找文本的文本。
Start_num 指定开始进行查找的字符。within_text 中的首字符是编号为 1 的字符。如果忽略 start_num,则假设其为 1。
使用 start_num 可跳过指定数目的字符。例如,假定使用文本字符串“AYF0093.YoungMensApparel”,如果要查找文本字符串中说明部分的第一个“Y”的编号,则可将 start_num 设置为 8,这样就不会查找文本的序列号部分。FIND 将从第 8 个字符开始查找,而在下一个字符处即可找到 find_text,于是返回编号 9。FIND 总是从 within_text 的起始处返回字符编号,如果 start_num 大于 1,也会对跳过的字符进行计数。
说明
∙如果 find_text 是空文本 (""),则 FIND 会匹配搜索串中的首字符(即:编号为 start_num 或 1 的字符)。
∙Find_text 中不能包含通配符。
∙如果 within_text 中没有 find_text,则 FIND 和 FINDB 返回错误值 #VALUE!。
∙如果 start_num 不大于 0,则 FIND 和 FINDB 返回错误值 #VALUE!。
∙如果 start_num 大于 within_text 的长度,则 FIND 和 FINDB 返回错误值 #VALUE!。
示例 1 (FIND)
1 |
2 |
A | |
数据 | |
Miriam McGovern | |
公式 | 说明(结果) |
=FIND("M",A2) | 上面字符串中第一个“M”的位置 (1) |
=FIND("m",A2) | 上面字符串中第一个“m”的位置 (6) |
=FIND("M",A2,3) | 从上面字符串的第三个字符开始查找的第一个“M”的位置 (8) |
1 |
2 |
3 |
4 |
A | |
数据 | |
Ceramic Insulators #124-TD45-87 | |
Copper Coils #12-671-6772 | |
Variable Resistors #116010 | |
公式 | 说明(结果) |
=MID(A2,1,FIND(" #",A2,1)-1) | 在上面第一个字符串中,抽取从第一个字符到“#”的文本 (Ceramic Insulators) |
=MID(A3,1,FIND(" #",A3,1)-1) | 在上面第二个字符串中,抽取从第一个字符到“#”的文本 (Copper Coils) |
=MID(A4,1,FIND(" #",A4,1)-1) | 在上面第三个字符串中,抽取从第一个字符到“#”的文本 (Variable Resistors) |
在以下示例中,FIND 返回 2,因为空文本 ("") 位于字符串中的第二个位置,而 FINDB 返回 3,因为每个字符均按字节进行计数,而第一个字符包含 2 个字节,所以第二个字符从第三个字节开始。
=FIND("") 等于 2
=FINDB("") 等于 3