小伙伴们好,今天要和大家分享一道特殊的文本提取的题目。原题目是这样的。 题目要求在摘要中将房号的信息提取出来放在G列。粗看之下,这不是一个特别难的题目,利用SEARCHB函数确定第一个单字节字符的位置,再利用LENB配合MATCH函数确定房号后第一个汉字的位置,就可以顺利将房号提取出来了。 真的是这样吗? 按照上面的思路,公式写下来如下。 在单元格G2中输入公式“=MID(MIDB(F2,SEARCHB("?",F2),100),1,MATCH(2,LENB(MID(MIDB(F2,SEARCHB("?",F2),100),ROW($1:$100),1)),)-1)”,三键回车后并向下拖曳即可。 思路:
稍等一下,我们发现,有一些数据将“#”符号也提取出来了,而这个不是我们所需要的。 在重新观察一下源数据,我们发现凡是带有“#”符号的,后面都紧跟着汉字“车”;而没有“#”符号的,房号后面都紧跟“号车”这两个汉字。 找到这个规律后,解决的方法也就有了。 我们只需要把“#车”替换成“号车”就可以了。 在单元格G2中输入公式“=MID(MIDB(SUBSTITUTE(F2,"#车","号车"),SEARCHB("?",SUBSTITUTE(F2,"#车","号车")),100),1,MATCH(2,LENB(MID(MIDB(SUBSTITUTE(F2,"#车","号车"),SEARCHB("?",SUBSTITUTE(SUBSTITUTE(F2,"#车","号车"),"#车","号车")),100),ROW($1:$100),1)),)-1)”,三键回车并向下拖曳即可。 思路和上一个完全一样。 下面留给大家一个小题目,下面这则公式,朋友们可以看懂吗? 欢迎给我私信留言哦! -END- 我就知道你“在看” |
|