高分 EXCEL中如何提取特定文字段

来源:百度知道 编辑:UC知道 时间:2024/05/30 00:43:45
A1中有文字
1 作者:瓜瓜,作品:回家路上,电话:99080040 单位:天堂地狱
2 作者:黄瓜瓜,作品:程度大幅度十分,电话:1299080040 单位:豆腐干大师傅赶得上感

现在我需要只提取其中的作品名称,名称长度不一样

请教

假设A1是“湖南省娄底市中方县响水乡”所在的格子,可以用以下的公式得到市名:
=MID(A1,SEARCH("省",A1)+1,SEARCH("市",A1)-SEARCH("省",A1)-1)
结果是“娄底”

其中:

函数MID(test,start_num,num_chars)的功能是从字符串test中start_num位置开始提取num_chars个字符。

函数SEARCH(find_test,within_test,start_num)的功能是给出find_test在字符串within_test中的位置:是从左起第start_num个字符(默认为第1个)开始的第几个字符。

我们要得到的市名,是省字后、市字前的那段字符,用公式可表示为:
MID(“目标文本”,“省”的位置+1,“省”的位置-“市”的位置-1)

SEARCH("省",A1)+1告诉了我们“省”字后面的字是第几个字,
同理,SEARCH("市",A1)+1告诉了我们“市”字后面的字是第几个字。

从而,通过公式:SEARCH("市",A1)-SEARCH("省",A1)-1我们知道需要拷贝几个字符,再将这些整合起来,我们就得到市名。

要得到县名、乡名的公式如下:
县名
=MID(A1,SEARCH("市",A1)+1,SEARCH("县",A1)-SEARCH("市",A1)-1)
结果是“中方”;
乡名
=MID(A1,SEARCH("县",A1)+1,SEARCH("乡",A1)-SEARCH("县",A1)-1)
结果是“响水”。

在B1中输入公式
=MID(A1,FIND(":",A1,5)+1,FIND(",",A1,5