[perl]字符串转拼音首字母(支持多音字)
实现的思路是,查表找到该字的所有读音,然后取首字母.
代码:
while (<DATA>) {chomp;my ($head, $all) = /^(.{3})(.*)$/;$all =~ s/^\s+//;### 只保留无音标号的首字母sub toshorter {my $str = $_[0];$str =~ s/ā|á|ǎ|à/a/g;$str =~ s/ē|é|ě|è/e/g;$str =~ s/ō|ó|ǒ|ò/o/g;$str =~ s/^([a-z]).*$/\1/;return $str;};my @tmp;for (split ',', $all) {push @tmp, toshorter($_);}$all = join ',', @tmp;###$pytable{$head} = $all; }sub getheadstr {@str = $_[0] =~ /.{3}/g;@res = ();sub loop {my ($no, $head) = @_;for (split ',', $pytable{$str[$no]}) {if ($no == $#str) {push @res, $head . $_;} else {loop($no + 1, $head . $_);}}}loop(0, "");undef %count;return join ' ', grep { ++$count{ $_ } < 2; } @res; }print "乐筠: " . getheadstr("乐筠") . "\n"; print "梁炜: " . getheadstr("梁炜") . "\n";__DATA__ 数据太长,另附
数据在此
转载于:https://www.cnblogs.com/jt2001/p/perl-str-to-pinyin-head.html
[perl]字符串转拼音首字母(支持多音字)相关推荐
- asp.net 获取汉字字符串的拼音首字母,含多音字
需求:在很多时候数据查询的时候,我们希望输入某个人姓名的拼音首字母进行查询,例如"潘长江",输入"pcj",就能搜索潘长江相关信息. 实现: #region 获 ...
- java取汉字拼音首字母含多音字及不常见的字
package com.anxin.ssk.common;import java.io.UnsupportedEncodingException; import java.util.HashMap; ...
- js获取字符串转拼音首字母
var getPy = (function() {//函数使用,本表收录的字符的Unicode编码范围为19968至40869, XDesigner 整理var strChineseFirstPY = ...
- 根据中文姓名或者其他中英文混合字符串获取拼音首字母
<?php /** * Modified by fuyong @ 2015-09-13 * 修复二分法查找方法 * 汉字拼音首字母工具类 * 注: 英文的字串:不变返回(包括数字) eg .ab ...
- 匹配中文字符串的拼音首字母或英文字符串的首字母缩写
原始需求: 有联系人名字为'张三'.'张三丰',搜索'ZS'可以通过系统提供的Contacts.CONTENT_FILTER_URI搜索到.但是匹配字符串高亮时,无法智能将'张三'高亮. 细化需求 需 ...
- python提取首字母的函数_Oracle提取中文字符串拼音首字母函数
通过oracle的NLSSORT函数对汉字按照拼音排序,然后根据汉字的区间返回对应的首字母. 效果1,获取拼音简码: 效果2,获取姓名首字母: 创建函数: /* 获取拼音简码函数 */ CREATE ...
- js汉语转拼音(全拼、首字母、拼音首字母)
新建js文件first_alphabet.js 1 // JavaScript Document 2 // 汉字拼音首字母列表 本列表包含了20902个汉字,用于配合 ToChineseSpell 3 ...
- php 汉字按字母排序,在PHP中,将一个汉字数组按照拼音首字母进行排序
(之前发的这篇博文因为含有敏感关键字,只好重发一遍了) $str = "我们可以在浏览器中看到,当鼠标移到元素上时,元素开始向右移动,开始比较慢,之后则比较快,移开时按原曲线回到原点.&qu ...
- VC++中如何获取GB2312字符集中汉字拼音首字母
一.关于GB2312编码的必要知识 GB2312编码适用于汉字处理.汉字通信等系统之间的信息交换,通行于中国大陆:新加坡等地也采用此编码.中国大陆几乎所有的中文系统和国际化的软件都支持GB 2312. ...
最新文章
- mysql主主备份及集群
- python的网页解析器_Python网页解析器使用实例详解
- 三大应用需求:5G信道编码技术取得突破
- 流计算技术实战 - 超大维表问题
- vivo手机充电慢还耗电
- python制动化之路
- jquery插件实现图片延迟加载
- spring2中jpa的配置和使用
- pc微信登录扫码显示无法连接服务器,WeAuth微信小程序实现PC网站扫码授权登录...
- X265代码学习1-X265源码下载编译及VS调试配置
- 总结陈丹琦博士论文(一):NEURAL READING COMPREHENSION AND BEYOND
- 数据结构基础知识(一)
- centos网卡配置
- Android studio运行出错 compilation failed see the compiler error output for details.
- 539/CA_SI4136/SI4133/SI5351手册解读
- Geant4能谱展宽【Gaussian Broadning】-root作图
- 迅睿CMS 程序安装教程
- DASCTF九月挑战赛复现-web
- DEC-DA:Deep Embedded Clustering with Data Augmentation
- 引文分析工具HistCite Pro与CiteSpace的安装