V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
lusin
V2EX  ›  PHP

请问如何判断一个字符串是否多拼,如果是多拼如何判断由几个拼音组成呢?

  •  
  •   lusin · 2014-03-20 17:09:10 +08:00 · 4189 次点击
    这是一个创建于 3689 天前的主题,其中的信息可能已经有所发展或是发生改变。
    7 条回复    1970-01-01 08:00:00 +08:00
    Fedor
        1
    Fedor  
       2014-03-20 17:15:33 +08:00
    你自己怎么判断的? 把自己的判断思维转换成程序语言。
    jsonline
        2
    jsonline  
       2014-03-20 17:48:23 +08:00
    什么叫多拼? 什么样的字符串?
    lusin
        3
    lusin  
    OP
       2014-03-20 18:28:55 +08:00
    @jsonline 就是一个字符串可以拆成单字拼音 比如 dapaiyundongxie 能拆成 da pai yun dong xie这样
    @Fedor 自己想不到好办法,双拼的话就把单字拼音拼成双拼存起来,判断的时候去比较,但多拼就想不到好办法了,超过四五拼了感觉数据有点大,单字拼音差不多400个左右,按我说的拼起来的话五拼就有点吓人了
    qiayue
        4
    qiayue  
       2014-03-20 19:11:09 +08:00
    其实跟中文分词是一个思路,你可以去研究一下分词算法
    xianshi 西安市/县市
    lerry
        5
    lerry  
       2014-03-21 09:52:17 +08:00 via Android
    我觉得应该从拼音的结构入手,一般的词是声母加韵母,有的词只有韵母
    iEverX
        6
    iEverX  
       2014-03-21 22:24:53 +08:00
    拼音,声母,b p m f d t n l 等,韵母 a o e i u v ai ei ui等,还有类似于 xuan这种,可以学一下双拼的方法,声部就是声母了,韵部包括韵母和韵母组合 uan,ian这种。然后用这三种串区匹配一个输入的字符串,知道完成或者不能匹配为止
    只有 声部 + 韵部,或者韵母(不包括uan这种)才是拼音
    dong3580
        7
    dong3580  
       2014-03-22 10:14:18 +08:00 via Android
    C#里面有个拼音转成汉字汉字转拼音,识别率还是很高的,可以尝试调用,试试。至于其他语言,我想应该也有类似的吧,尝试用学习的方法,将用户输入频率高的加入字典,这样可以间接给出用户拼写建议。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5513 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 06:47 · PVG 14:47 · LAX 23:47 · JFK 02:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.