0

0

PHP 将连续的汉语拼音分隔开

php中文网

php中文网

发布时间:2016-07-29 09:07:07

|

2913人浏览过

|

来源于php中文网

原创

问题描述:

      例: woshidewenfensi => wo shi de wen fen si
      woshidewenfensi 这段拼音有可能输入的时候已经有分隔 比如:woshi dewen fensi 或 woshi de wen fensi 等等 最终都应转换成 wo shi de wen fen si 。有特殊符号、标点一律替换成分隔符(空格)。

解决方法:

      使用python编写一个脚本pinyin.py,这样PHP调用时,只需要使用命令行 脚本路径+参数 即可返回结果。

#!/usr/bin/env python import sys 
#vim: encoding=utf-8

import sys
from pprint import pprint

py = set([u'gu', u'qiao', u'qian', u'ge', u'gang', u'ga', u'lian', u'liao', u'rou', u'zong', u'tu', u'seng', u'ti', u'te', u'ta', u'nong', u'zhang', u'fan', u'tuan', u'gua', u'die', u'gui', u'guo', u'gun', u'sang', u'diu', u'tei', u'zi', u'ze', u'za', u'chen', u'zu', u'ruo', u'dian', u'diao', u'nei', u'suo', u'sun', u'zhao', u'sui', u'kuo', u'kun', u'kui', u'zhai', u'zuan', u'kua', u'bo', u'ning', u'lei', u'neng', u'men', u'mei', u'geng', u'chang', u'shua', u'cha', u'che', u'fen', u'chi', u'fei', u'chu', u'shui', u'me', u'ma', u'mo', u'mi', u'mu', u'dei', u'cai', u'zhan', u'cao', u'can', u'den', u'wang', u'beng', u'zhuang', u'tan', u'tao', u'tai', u'eng', u'song', u'ping', u'hou', u'cuan', u'\u0148g', u'lan', u'lao', u'fu', u'fa', u'jiong', u'mai', u'xiang', u'mao', u'fo', u'a', u'jiang', u'kuang', u'bing', u'su', u'si', u'sa', u'se', u'zan', u'm\u0300', u'xuan', u'zei', u'zen', u'kong', u'pang', u'le', u'jia', u'jin', u'lo', u'lai', u'li', u'peng', u'lu', u'yi', u'yo', u'ya', u'cen', u'dan', u'dao', u'ye', u'din', u'cei', u'zhen', u'jiu', u'bang', u'nou', u'yu', u'weng', u'wong', u'en', u'ei', u'kang', u'dia', u'er', u'ru', u'keng', u're', u'ren', u'gou', u'ri', u'she', u'tian', u'tiao', u'que', u'shi', u'shun', u'shuo', u'qun', u'xue', u'yun', u'xun', u'fiao', u'yue', u'ding', u'zao', u'rang', u'xi', u'yong', u'zai', u'guan', u'guai', u'dong', u'kuai', u'ying', u'kuan', u'xu', u'xia', u'xie', u'yin', u'rong', u'xin', u'tou', u'nian', u'niao', u'xiu', u'man', u'kou', u'niang', u'hua', u'chao', u'hun', u'huo', u'hui', u'shuan', u'quan', u'shuai', u'chong', u'bei', u'ben', u'dang', u'sai', u'ang', u'sao', u'san', u'reng', u'ran', u'rao', u'ming', u'l\u01dc', u'l\u01da', u'l\u01d8', u'lie', u'lia', u'min', u'miao', u'mian', u'mie', u'liu', u'zou', u'miu', u'nen', u'kai', u'kao', u'kan', u'dai', u'ka', u'ke', u'yang', u'ku', u'deng', u'dou', u'shou', u'chuang', u'nang', u'feng', u'meng', u'cheng', u'di', u'de', u'da', u'gei', u'du', u'gen', u'qu', u'shu', u'sha', u'\u1e3f', u'ban', u'bao', u'bai', u'nun', u'nuo', u'sen', u'kei', u'fang', u'teng', u'lun', u'luo', u'ken', u'wa', u'wo', u'ju', u'tui', u'wu', u'jie', u'ji', u'huang', u'tuo', u'cou', u'la', u'mang', u'ci', u'tun', u'tong', u'ca', u'pou', u'ce', u'gong', u'cu', u'dui', u'dun', u'duo', u'ting', u'qie', u'yao', u'yan', u'pi', u'po', u'suan', u'chua', u'chun', u'\u0148', u'chui', u'gao', u'gan', u'ao', u'gai', u'xiong', u'tang', u'n', u'pian', u'piao', u'cang', u'heng', u'xian', u'xiao', u'bian', u'biao', u'zhua', u'duan', u'cong', u'zhui', u'zhuo', u'zhun', u'hong', u'shuang', u'juan', u'zhei', u'pai', u'shai', u'shan', u'shao', u'pan', u'pao', u'nin', u'nia', u'hang', u'\u01f9g', u'nie', u'zhuai', u'mou', u'zhuan', u'yuan', u'niu', u'zhong', u'qi', u'lin', u'guang', u'nao', u'n\u01d8', u'n\u01da', u'n\u01dc', u'hai', u'han', u'hao', u'wei', u'wen', u'ruan', u'cuo', u'cun', u'cui', u'bin', u'bie', u'l\xfce', u'shen', u'shei', u'fou', u'xing', u'\u0144g', u'qia', u'qiang', u'nuan', u'pen', u'pei', u'\u01f9', u'rui', u'run', u'ba', u'sheng', u'rua', u'bi', u'bu', u'chuan', u'qing', u'chuai', u'pu', u'o', u'chou', u'ou', u'zui', u'luan', u'zuo', u'jian', u'jiao', u'sou', u'wan', u'jing', u'qiong', u'wai', u'long', u'pa', u'liang', u'lou', u'huan', u'hen', u'hei', u'huai', u'n\xfce', u'\u0144', u'jue', u'shang', u'jun', u'hu', u'hm', u'ling', u'ha', u'he', u'zhu', u'ceng', u'zha', u'zhe', u'zhi', u'qin', u'pin', u'ai', u'chai', u'chan', u'pie', u'zeng', u'an', u'qiu', u'ni', u'na', u'zang', u'nai', u'nan', u'ne', u'ng', u'chuo', u'tie', u'you', u'nu', u'zheng', u'leng', u'zun', u'zhou', u'lang', u'e', u'hng'])


def pinyin_split():
    pinyin = sys.argv[1]
    
    l = len(pinyin)
    p = [l]*(l+1)
    p[l] = 0
    s = [0]*l
    for i in xrange(l-1, -1, -1):
        for j in xrange(l-i):
            if j == 0 or pinyin[i:i+j+1] in py and p[i+j+1]+1<p[i]:
                p[i] = p[i+j+1]+1
                s[i] = j+1
    tmp = 0
    while tmp<l:
        yield pinyin[tmp:tmp+s[tmp]]
        tmp += s[tmp]

pprint(list(pinyin_split()))

示例:

RoboNeo
RoboNeo

专注影像与设计的AI助手

下载

立即学习PHP免费学习笔记(深入)”;

PHP 将连续的汉语拼音分隔开

参考:http://www.dewen.io/q/1037/%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0%E5%B0%86%E8%BF%9E%E7%BB%AD%E7%9A%84%E6%B1%89%E8%AF%AD%E6%8B%BC%E9%9F%B3%E5%88%86%E9%9A%94%E5%BC%80

以上就介绍了PHP 将连续的汉语拼音分隔开,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

相关文章

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法

本专题系统整理pixiv网页版官网入口及登录访问方式,涵盖官网登录页面直达路径、在线阅读入口及快速进入方法说明,帮助用户高效找到pixiv官方网站,实现便捷、安全的网页端浏览与账号登录体验。

616

2026.02.13

微博网页版主页入口与登录指南_官方网页端快速访问方法
微博网页版主页入口与登录指南_官方网页端快速访问方法

本专题系统整理微博网页版官方入口及网页端登录方式,涵盖首页直达地址、账号登录流程与常见访问问题说明,帮助用户快速找到微博官网主页,实现便捷、安全的网页端登录与内容浏览体验。

194

2026.02.13

Flutter跨平台开发与状态管理实战
Flutter跨平台开发与状态管理实战

本专题围绕Flutter框架展开,系统讲解跨平台UI构建原理与状态管理方案。内容涵盖Widget生命周期、路由管理、Provider与Bloc状态管理模式、网络请求封装及性能优化技巧。通过实战项目演示,帮助开发者构建流畅、可维护的跨平台移动应用。

91

2026.02.13

TypeScript工程化开发与Vite构建优化实践
TypeScript工程化开发与Vite构建优化实践

本专题面向前端开发者,深入讲解 TypeScript 类型系统与大型项目结构设计方法,并结合 Vite 构建工具优化前端工程化流程。内容包括模块化设计、类型声明管理、代码分割、热更新原理以及构建性能调优。通过完整项目示例,帮助开发者提升代码可维护性与开发效率。

20

2026.02.13

Redis高可用架构与分布式缓存实战
Redis高可用架构与分布式缓存实战

本专题围绕 Redis 在高并发系统中的应用展开,系统讲解主从复制、哨兵机制、Cluster 集群模式及数据分片原理。内容涵盖缓存穿透与雪崩解决方案、分布式锁实现、热点数据优化及持久化策略。通过真实业务场景演示,帮助开发者构建高可用、可扩展的分布式缓存系统。

54

2026.02.13

c语言 数据类型
c语言 数据类型

本专题整合了c语言数据类型相关内容,阅读专题下面的文章了解更多详细内容。

29

2026.02.12

雨课堂网页版登录入口与使用指南_官方在线教学平台访问方法
雨课堂网页版登录入口与使用指南_官方在线教学平台访问方法

本专题系统整理雨课堂网页版官方入口及在线登录方式,涵盖账号登录流程、官方直连入口及平台访问方法说明,帮助师生用户快速进入雨课堂在线教学平台,实现便捷、高效的课程学习与教学管理体验。

15

2026.02.12

豆包AI网页版入口与智能创作指南_官方在线写作与图片生成使用方法
豆包AI网页版入口与智能创作指南_官方在线写作与图片生成使用方法

本专题汇总豆包AI官方网页版入口及在线使用方式,涵盖智能写作工具、图片生成体验入口和官网登录方法,帮助用户快速直达豆包AI平台,高效完成文本创作与AI生图任务,实现便捷智能创作体验。

598

2026.02.12

PostgreSQL性能优化与索引调优实战
PostgreSQL性能优化与索引调优实战

本专题面向后端开发与数据库工程师,深入讲解 PostgreSQL 查询优化原理与索引机制。内容包括执行计划分析、常见索引类型对比、慢查询优化策略、事务隔离级别以及高并发场景下的性能调优技巧。通过实战案例解析,帮助开发者提升数据库响应速度与系统稳定性。

56

2026.02.12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
第十一期_综合实战
第十一期_综合实战

共115课时 | 21.1万人学习

4天精通nodejs教程
4天精通nodejs教程

共91课时 | 13.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号