今天介绍4个文本字符串函数 SEARCH()函数 SEARCHB()函数 LEFT()函数 LEFTB()函数
6,SEARCH()函数 含义:在原字符串中,从参数start_num指定的位置开始查找一个字符串,返回该字符串在原字符串中的位置(是第几个字符,就返回几)。
格式: SEARCH(find_text,within_text,start_num ) 参数: 具体如下: 备注:如上图所示。 D2单元格的公式为“=SEARCH(B2,A2)”。 由于公式中,没有start_num参数,即表明该参数为1,是从原字符串的第一个字符开始查找。 需要查找的字符串是B2单元格中的“学生”。 原字符串是A2单元格中的“张三1学生2学生”。 原字符串中有两个“学生”,查询的方式是,查询到一个后,就返回位置,不再继续查询,所以返回的是第一个“学生”的位置,即返回的是“4”。 D3单元格的公式为“=SEARCH(B2,A2,5)”。 由于公式中,start_num参数是5,是从原字符串的第5个字符开始查找。 需要查找的字符串是“学生”。 原字符串是“张三1学生2学生”。 由于是从第5个字符“生”开始,往后查找,所以第一个“学生”字符被跳过,查询到的是第二个“学生”的位置,即返回的是“7”。 该函数与FIND()函数类似,唯一的区别是,FIND()函数查询时区分大小写,而SEARCH()函数查询时是不区分大小写的。
7,SEARCHB()函数 含义:在原字符串中,从参数start_num指定的位置开始查找一个字符串,返回该字符串在原字符串中的位置(是第几个字节,就返回几)。
格式: SEARCHB(find_text,within_text,start_num ) 参数: 具体如下: 备注:如上图所示。 D2单元格的公式为“=SEARCHB(B2,A2)”。 由于公式中,没有start_num参数,即表明该参数为1,是从原字符串的第一个字节开始查找。 需要查找的字符串是B2单元格中的“学生”。 原字符串是A2单元格中的“张三1学生2学生”。 原字符串中有两个“学生”,查询的方式是,查询到一个后,就返回位置,不在继续查询,所以返回的是第一个“学生”的位置,即返回的是“6”。 “张三”两个汉字算4个字节,“1”算1个字节,共5个字节,所以第一个“学生”是从第6个字节开始,所以返回的“6”。 D3单元格的公式为“=SEARCHB(B2,A2,7)”。 由于公式中,start_num参数为7,是从原字符串的第7个字节开始查找。跳过了第一个“学生”,所以返回的第二个“学生”的位置,即“11”。 同样的,该函数与FINDB()函数类似,唯一的区别是,FINDB()函数查询是区分大小写的,而SEARCHB()函数查询是不区分大小写的。
8,LEFT()函数 含义:对原字符串text,从最左边第一个字符开始截取,截取num_chars个字符,产生一个新字符串并返回。
格式: LEFT(text,num_chars ) 参数: text: 原字符串,即一个需要进行截取的字符串。 num_chars: 需要截取的长度。当该参数为1时,可以省略。
具体如下: 备注:如上图所示。 D2单元格的公式为“=LEFT(B2)”。 公式中没有num_chars参数,表明该参数值为1,即新字符串的长度为1。 text参数为B2,即将原字符串,B2单元格中的“张三84湖南”进行截取,截取的长度为“1”。 截取的方式是,从最左边开始,即从左边第一个字符串开始,截取1个字符,产生新的字符串,并返回,所以返回的新字符串是“张”。
9,LEFTB()函数 含义:对原字符串text,从最左边第一个字节开始截取,截取num_chars个字节,产生一个新字符串并返回。
格式: LEFT(text,num_chars ) 参数: text: 原字符串,即一个需要进行截取的字符串。 num_chars: 需要截取的长度。当该参数为1时,可以省略
具体如下:
备注:如上图所示。 D2单元格的公式为“=LEFTB(B2)”。 公式中没有num_chars参数,表明该参数值为1,即新字符串的长度为1。 text参数为B2,即将原字符串,B2单元格中的“1张三84湖南”进行截取,截取的长度为“1”。 截取的方式是,从最左边开始,即从左边第一个字符串开始,截取1个字节,产生新的字符串,并返回,所以返回的新字符串是“1”。 D3单元格的公式为“=LEFTB(B3,4)”。 表明返回的是,最左边的4个字节,由于汉字占2个字节,所以字符“四”为第4和第5个字节,无法返回一半,所以,默认返回前3个字节,所以返回的是字符“2李”。
|