通过拼音模糊搜索汉字的功能实现 10

场景1,汉语拼音模糊音:语音输入为:打开集团产品报表第三方语音API识别为:打开集团唱片报表原因:口音不清,API能力不佳请问如何正确返回发音者想要的结果?场景2,中英文... 场景1,汉语拼音模糊音:

语音输入为:打开集团产品报表

第三方语音API识别为:打开集团唱片报表

原因:口音不清,API能力不佳

请问如何正确返回发音者想要的结果?

场景2,中英文混杂输入,特别是非常规英文:

语音输入为:打开line use报表

第三方语音API识别为:打开“来邮资”报表

原因:口音不清,API能力不佳、非常规英语无法识别

请问如何正确返回发音者想要的结果?

场景3,汉语中模糊音处理:

语音输入为:全屏

第三方语音API识别为:全拼

原因:口音不清

请问如何正确返回发音者想要的结果?
展开
 我来答
DoramiHe
2018-04-01 · 知道合伙人互联网行家
DoramiHe
知道合伙人互联网行家
采纳数:25332 获赞数:59543
2011年中山职业技术学院毕业,现担任毅衣公司京东小二

向TA提问 私信TA
展开全部
这个,好像有些难度,记得以前有做过类似的题目,不过这个还涉及到显示的问题呀...如果没有输入就不会显示,vb和excel我还没有学会如何融会贯通
我个人还有个疑问,那就是你还不如连在一起呢...你这么弄先输入的是姓,但是还要选择名,如果别人不知道的呢?怎么选择?连在一起之后就先输入第一个字符,代表的就是姓,然后第二个字符,代表的就是名字,或者还有第三个......
Function pinyin(p As String) As String *自定义函数pinyin(),用来读取汉字的拼音首字母
I = Asc(p)
Select Case i
Case -20319 To -20284: pinyin = "A"
Case -20283 To -19776: pinyin = "B"
Case -19775 To -19219: pinyin = "C"
Case -19218 To -18711: pinyin = "D"
Case -18710 To -18527: pinyin = "E"
Case -18526 To -18240: pinyin = "F"
Case -18239 To -17923: pinyin = "G"
Case -17922 To -17418: pinyin = "H"
Case -17417 To -16475: pinyin = "J"
Case -16474 To -16213: pinyin = "K"
Case -16212 To -15641: pinyin = "L"
Case -15640 To -15166: pinyin = "M"
Case -15165 To -14923: pinyin = "N"
Case -14922 To -14915: pinyin = "O"
Case -14914 To -14631: pinyin = "P"
Case -14630 To -14150: pinyin = "Q"
Case -14149 To -14091: pinyin = "R"
Case -14090 To -13319: pinyin = "S"
Case -13318 To -12839: pinyin = "T"
Case -12838 To -12557: pinyin = "W"
Case -12556 To -11848: pinyin = "X"
Case -11847 To -11056: pinyin = "Y"
Case -11055 To -2050: pinyin = "Z"
End Select
End Function
A=Ucase(Range("c" & 1).Value) *读写c1单元格的数据(我在网站上面看的,因为不是自己的电脑,没有vb,无法验证)
Z=len(a)-1 *z=字符串的长度-1,因为数组都是从0开始计算的
Dim b(z) as integer
For i=0 to z *循环,把输入的字符串给单个的提取出来放入数组中
B(i)=mid(a,i+1,1)
Next
For i=0 to hangshu(excel的行数) *取消所有行的隐藏,因为下面的操作会隐藏行,可能会影响到下次操作,所以应该在每一次运行程序前取消所有的隐藏行
If Rows (“I”).EntireRow.Hidden = True Then
Rows("i").EntireRow.Hidden = False
End If
Next

For p=0 to z
For i=0 to hangshu(excel的行数) *循环
If pinyin(Range("a" & i).Value)<>a Then *不满足条件的行全部隐藏
Rows("i").EntireRow.Hidden = True
End If
Next
Next
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式