遇到不会读的汉字怎么办?
这个成语中的蛇你会读吗?它读作yí而非she,意思是指对人虚情假意,敷衍应酬。
昨天抖音一主持人因读错音而被群嘲。兰色特用excel自带朗读功能试了试,也错读成了she。由此看来excel的朗读功能也不太靠谱啊。
兰色突发奇想,能不能写一个公式提取成语的拼音。试了试,还真的写出来了:
=MID(WEBSERVICE('https://hanyu.baidu.com/s?wd='&B2),FIND('>[',WEBSERVICE('https://hanyu.baidu.com/s?wd='&B2))+2,FIND(']<',WEBSERVICE('https://hanyu.baidu.com/s?wd='&B2))-FIND('>[',WEBSERVICE('https://hanyu.baidu.com/s?wd='&B2))-2)
天啊,公式好长。这这怎么能记得住?
嘿嘿,别着急。等兰色一点点把公式含义一步步说给你听,你也可以自已写出这个提取拼音的公式。
利用百度汉语可以查看汉字的拼音
https://hanyu.baidu.com/s?wd=银行
修改网址中的汉字,就可以返回该汉字的信息。利用这个特点,我们可以通过Excel公式来提取拼音。
在Excel中有一个可以提取网页源代码的函数WEBSERVICE ,如下面公式可以提取百度汉语查b2单元格内容(虚与委蛇)时的网页html代码。
=WEBSERVICE('https://hanyu.baidu.com/s?wd='&B2)
由于代码一般有很多很多行,所以兰色把代码粘到记事本中,并找到了拼音所在行。
接下来需要用函数把[ ]中的拼音提取出来。但前提是要计算出拼音位置和长度。
于是兰色用先find函数查找出>] 和 ]<的位置
=FIND('>[',WEBSERVICE('https://hanyu.baidu.com/s?wd='&B2))
=FIND(']<',WEBSERVICE('https://hanyu.baidu.com/s?wd='&B2))
而由代码构成可以看出>] 位置+2,恰好是拼音的开始位置,即:
FIND('>[',WEBSERVICE('https://hanyu.baidu.com/s?wd='&B2))+2
而两个公式相减后再减2,而是拼音的长度,即
WEBSERVICE('https://hanyu.baidu.com/s?wd='&B2))-FIND('>[',WEBSERVICE('https://hanyu.baidu.com/s?wd='&B2))-2
最后用mid(字符串,开始截取位置,截取长度)即可把拼音截取出来,即最后的公式:
=MID(WEBSERVICE('https://hanyu.baidu.com/s?wd='&B2),FIND('>[',WEBSERVICE('https://hanyu.baidu.com/s?wd='&B2))+2,FIND(']<',WEBSERVICE('https://hanyu.baidu.com/s?wd='&B2))-FIND('>[',WEBSERVICE('https://hanyu.baidu.com/s?wd='&B2))-2)
兰色说:以后我们遇到从网页上批量提取查询结果时(如根据手机号码批量查询归属地),都可以使用今天兰色分享的公式套路:用WEBSERVICE提取网页源代码,再用mid等函灵敏截取出需要的结果。如果能提取的是xml代码,可以用FILTERXML函数直接根据标签提取。
长按下面二维码图片,点上面”前往图中包含的公众号“然后再点关注,每天可以收到一篇兰色最新写的excel教程。