第七章:文本处理函数
第4节:7.4 MID函数
7.4.1.MID函数简介
MID函数用于从文本字符串的指定位置开始提取指定数量的字符。它特别适用于从字符串中提取子字符串或处理具有特定格式的数据。
语法:
MID(text, start_num, num_chars)
- **text**:必需。要从中提取字符的文本字符串。
start_num:必需。开始提取的位置,文本字符串中第一个字符的位置为1。
num_chars:必需。要提取的字符数。
7.4.2.基本用法
假设在单元格A1中有文本“Excel函数大全”,并且我们希望从第6个字符开始提取2个字符:
=MID(A1, 6, 2)
结果:返回“函数”
7.4.3.实际应用场景
场景1:提取日期中的年、月、日
在处理日期字符串时,可能需要分别提取年、月、日。例如,在单元格B1中有日期“2024-07-01”, 我们先用text函数将其转换为文本格式,然后使用MID函数提取各部分:
提取年份:
=MID(TEXT(B1, "YYYY-MM-DD"), 1, 4)
提取月份:=MID(TEXT(B1, "YYYY-MM-DD"), 6, 2)
提取日期:=MID(TEXT(B1, "YYYY-MM-DD"), 9, 2)
结果:年份:2024 月份:07 日期:01
场景2:提取产品编号中的分类信息
假设在单元格C1中有产品编号“PROD-12345”,需要提取分类信息“PROD”:
=MID(C1, 1, 4)
结果:返回“PROD”
7.4.4 注意事项
start_num大于文本长度时:如果start_num的值大于文本字符串的长度,MID函数将返回空文本。
num_chars超出文本长度时:如果num_chars的值超过从start_num到字符串末尾的字符数,MID函数将返回从start_num到字符串末尾的所有字符。
7.4.5.高级应用
与其他函数结合使用
MID函数可以与其他文本处理函数结合使用,以实现更复杂的数据处理需求。以下是一个综合案例:
案例:从复杂字符串中提取信息
假设在单元格D1中有一个复杂的文本字符串“Order:12345-Date:2024-07-01-Status:Shipped”,我们需要提取订单号、日期和状态。
提取订单号:
=MID(D1, FIND("Order:", D1) + 6, FIND("-Date:", D1) - FIND("Order:", D1) - 6)
提取日期:
=MID(D1, FIND("Date:", D1) + 5, FIND("-Status:", D1) - FIND("Date:", D1) - 5)
提取状态:
=MID(D1, FIND("Status:", D1) + 7, LEN(D1) - FIND("Status:", D1) - 6)
公式解析:
FIND("Order:", D1) + 6**:确定订单号的起始位置(“Order:”后面的第一个字符)。
FIND("-Date:", D1) - FIND("Order:", D1) - 6**:计算订单号的长度。
FIND("Date:", D1) + 5:确定日期的起始位置(“Date:”后面的第一个字符)。
FIND("-Status:", D1) - FIND("Date:", D1) - 5:计算日期的长度。
FIND("Status:", D1) + 7:确定状态的起始位置(“Status:”后面的第一个字符)。
LEN(D1) - FIND("Status:", D1) - 6**:计算状态的长度。
7.4.6 实战练习
练习1:假设在单元格E1到E5中有一系列的身份证号(如“123456199001011234”),请使用MID函数提取出出生日期(19900101)。
练习2:在F列中有一组订单号(如“ORD-2024-0001”),请使用MID函数提取出年份(2024)。
练习解答**:
=MID(E1, 7, 8)
=MID(F1, 5, 4)
7.4.7小结
MID函数是Excel中非常实用的文本处理工具。通过掌握其用法,我们可以灵活地从字符串中提取所需的部分,并应用于各种数据处理场景。结合其他文本函数,MID函数的应用将更加广泛和强大,为日常工作提供了有力的支持。