1. 带B函数:Excel中处理混合数据的利器
在日常数据处理工作中,我们经常会遇到包含中文、英文和数字混合的字符串。比如"张三13800138000"、"产品A-100件"这类数据,传统的文本函数处理起来往往力不从心。这就是Excel带B函数大显身手的地方。
带B函数包括LENB、LEFTB、RIGHTB、MIDB、FINDB和SEARCHB等,它们与常规文本函数的区别在于按字节(byte)而非字符(character)处理数据。由于中文字符在计算机中占2个字节,而英文字母和数字只占1个字节,这种特性使得带B函数成为处理混合数据的完美工具。
提示:在GBK编码环境下,一个汉字占2个字节;在UTF-8编码中,一个汉字通常占3个字节。Excel中的带B函数基于当前系统的默认编码(通常是GBK)工作。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 核心带B函数详解与应用场景
2.1 LENB与LEN的黄金组合
LENB函数返回文本的字节长度,而LEN函数返回字符长度。这对组合是分离中英文的利器:
code复制=LENB("Excel技巧") // 返回9(E-x-c-e-l-技-巧,5+4)
=LEN("Excel技巧") // 返回7(E-x-c-e-l-技-巧)
实用案例:从"姓名+电话"字符串中提取纯中文姓名
假设A2单元格内容为"李四13800138000":
code复制=LEFT(A2,(LENB(A2)-LEN(A2))) // 返回"李四"
原理分析:LENB计算总字节数,LEN计算字符数,两者之差就是中文字符的数量(每个汉字多占1字节)。用LEFT提取这个数量的字符,正好得到纯中文姓名。
2.2 SEARCHB的精确定位
SEARCHB可以查找特定字符的字节位置,支持通配符:
code复制=SEARCHB("?",A1) // 返回第一个字母/数字的位置
实操技巧:处理"产品A-100件"这类数据时,可以用SEARCHB定位分隔符"-"的字节位置,然后配合MIDB精确提取数量。
2.3 MIDB的精准提取
MIDB函数可以从指定字节位置开始提取特定字节长度的内容:
code复制=MIDB("北京010",3,4) // 返回"京01"(从第3字节取4字节)
复合应用
