【语法1】MID(text,start_num,num_chars) 【语法2】MIDB(text,start_num,num_bytes) 两个函数语法相同,都是从文本text中指定位置开始截取指定长度的子文本。两者的区别在于计量单位的不同:MID以字符为计量单位,MIDB以字节为计量单位。这个差异具体表现在第二和第三个参数上。 参数start_num是一个数字值,小数部分截尾取整。用于指定开始截取位置。对于MID函数为从第几个字符开始截取;对于MIDB函数为从第几字节开始截取。 参数num_chars/num_bytes也是一个数字值,小数部分截尾取整。用于指定截取的字符/字节数目。 Start_num必须≥1,num_chars/num_bytes必须≥0,否则函数返回错误值#VALUE!。 如果start_num大于text的长度,或者num_chars/num_bytes为0,函数返回空文本''。 如果start_num小于text的长度,而且start_num与num_chars/num_bytes的和超过text的长度,函数返回从start_num到text末尾的字符。 【用法】 一、截取固定位置、固定长度的文本。 假设单元格A1的值是“滚滚长江东逝水”,以下公式都返回文本“长江”: =MID(A1,3,2) =MIDB(A1,5,4) 二、截取不固定位置、不固定长度的文本。 继续使用上面的例子。以下公式返回“长”字与“逝”字之间的字符: =MID(A1,FIND('长',A1),FIND('逝',A1)-FIND('长',A1) 1) 三、使用MIDB时要注意半个汉字的问题。 继续使用上面的例子。在单元格A2输入以下公式: =MIDB(A1,6,2) 公式截取了“长”字的后半字节及“江”字的前半字节,单元格A2显示为一片空白。 用下面的公式进行测试: =LEN(A2) 结果是2,可见A2的返回值包含两个字符。注意!我说的是两个字符,而不是说两个字节!! 用下面的公式检测A2的第一个字符: =CODE(A2) 返回32,说明A2的第一个字符是空格符。 |
|
来自: L罗乐 > 《字符提取(文本函运用)》