oracle实现将汉字字符串转换成拼音首字母缩写
1、定义一个函数:
CREATE OR REPLACE FUNCTION F_GET_PYJM(P_NAME IN VARCHAR2) RETURN VARCHAR2 ASV_COMPARE VARCHAR2(100);V_RETURN VARCHAR2(4000);/*创建人:gangma2创建时间:2020-08-21功能描述:任意字符串转换成拼音首字符简写,返回拼音简码函 */
BEGINDECLARE--定义一个函数,通过NLSSORT来进行单个字符语言排序FUNCTION F_NLSSORT(P_WORD IN VARCHAR2) RETURN VARCHAR2 ASBEGINRETURN NLSSORT(P_WORD, 'NLS_SORT=SCHINESE_PINYIN_M');END;BEGINFOR I IN 1 .. LENGTH(P_NAME) LOOP--通过循环取每个字符,进行比较,确定该字符首字母拼音V_COMPARE := F_NLSSORT(SUBSTR(P_NAME, I, 1));IF V_COMPARE >= F_NLSSORT('吖') AND V_COMPARE <= F_NLSSORT('驁') THENV_RETURN := V_RETURN || 'A';ELSIF V_COMPARE >= F_NLSSORT('八') AND V_COMPARE <= F_NLSSORT('簿') THENV_RETURN := V_RETURN || 'B';ELSIF V_COMPARE >= F_NLSSORT('嚓') AND V_COMPARE <= F_NLSSORT('錯') THENV_RETURN := V_RETURN || 'C';ELSIF V_COMPARE >= F_NLSSORT('咑') AND V_COMPARE <= F_NLSSORT('鵽') THENV_RETURN := V_RETURN || 'D';ELSIF V_COMPARE >= F_NLSSORT('妸') AND V_COMPARE <= F_NLSSORT('樲') THENV_RETURN := V_RETURN || 'E';ELSIF V_COMPARE >= F_NLSSORT('发') AND V_COMPARE <= F_NLSSORT('猤') THENV_RETURN := V_RETURN || 'F';ELSIF V_COMPARE >= F_NLSSORT('旮') AND V_COMPARE <= F_NLSSORT('腂') THENV_RETURN := V_RETURN || 'G';ELSIF V_COMPARE >= F_NLSSORT('妎') AND V_COMPARE <= F_NLSSORT('夻') THENV_RETURN := V_RETURN || 'H';ELSIF V_COMPARE >= F_NLSSORT('丌') AND V_COMPARE <= F_NLSSORT('攈') THENV_RETURN := V_RETURN || 'J';ELSIF V_COMPARE >= F_NLSSORT('咔') AND V_COMPARE <= F_NLSSORT('穒') THENV_RETURN := V_RETURN || 'K';ELSIF V_COMPARE >= F_NLSSORT('垃') AND V_COMPARE <= F_NLSSORT('擽') THENV_RETURN := V_RETURN || 'L';ELSIF V_COMPARE >= F_NLSSORT('嘸') AND V_COMPARE <= F_NLSSORT('椧') THENV_RETURN := V_RETURN || 'M';ELSIF V_COMPARE >= F_NLSSORT('拏') AND V_COMPARE <= F_NLSSORT('瘧') THENV_RETURN := V_RETURN || 'N';ELSIF V_COMPARE >= F_NLSSORT('筽') AND V_COMPARE <= F_NLSSORT('漚') THENV_RETURN := V_RETURN || 'O';ELSIF V_COMPARE >= F_NLSSORT('妑') AND V_COMPARE <= F_NLSSORT('曝') THENV_RETURN := V_RETURN || 'P';ELSIF V_COMPARE >= F_NLSSORT('七') AND V_COMPARE <= F_NLSSORT('裠') THENV_RETURN := V_RETURN || 'Q';ELSIF V_COMPARE >= F_NLSSORT('亽') AND V_COMPARE <= F_NLSSORT('鶸') THENV_RETURN := V_RETURN || 'R';ELSIF V_COMPARE >= F_NLSSORT('仨') AND V_COMPARE <= F_NLSSORT('蜶') THENV_RETURN := V_RETURN || 'S';ELSIF V_COMPARE >= F_NLSSORT('侤') AND V_COMPARE <= F_NLSSORT('籜') THENV_RETURN := V_RETURN || 'T';ELSIF V_COMPARE >= F_NLSSORT('屲') AND V_COMPARE <= F_NLSSORT('鶩') THENV_RETURN := V_RETURN || 'W';ELSIF V_COMPARE >= F_NLSSORT('夕') AND V_COMPARE <= F_NLSSORT('鑂') THENV_RETURN := V_RETURN || 'X';ELSIF V_COMPARE >= F_NLSSORT('丫') AND V_COMPARE <= F_NLSSORT('韻') THENV_RETURN := V_RETURN || 'Y';ELSIF V_COMPARE >= F_NLSSORT('帀') AND V_COMPARE <= F_NLSSORT('咗') THENV_RETURN := V_RETURN || 'Z';ELSE--如果不能被转换返回原字符V_RETURN := V_RETURN || UPPER(SUBSTR(P_NAME, I, 1));END IF;END LOOP;RETURN LOWER(V_RETURN);END;
END;
2、调用函数,如:
转自:https://blog.csdn.net/mgxiaomage/article/details/108154918
oracle实现将汉字字符串转换成拼音首字母缩写相关推荐
- Oracle任意字符串转换成拼音首字母简写
Oracle任意字符串转换成拼音首字母简写 需求目标 将"拼音简码"四个字转换成拼音首字母简写PYJM 实现代码 CREATE OR REPLACE FUNCTION FUN_GE ...
- VB 汉字字符串转换成拼音
以下这个函数可以将一个汉字字符串转换成拼音 Private Function Getpy(Txt) Dim d, TmpTxt Dim wzcode, i, TmpWZ, a, b, ii Set d ...
- 输入中文转换成拼音首字母
1.输入中文转换成拼音首字母. 需要的maven 工具包 <dependency><groupId>com.belerweb</groupId><artif ...
- html自动汉字转拼音,输入汉字转换成拼音首字母js代码
js代码 //根据文本框输入的汉字自动获取汉字拼音首字母到下拉列表中,支持多音字,需引入库pinying.js function query(){ var str = document.getElem ...
- Java 输入汉字姓名 输出 姓名拼音 首字母缩写组合
这几天想做一个这样子的功能:在查询客户信息的时候,可以直接根据客户姓名的拼音缩写进行,例如,输入 HZ 就可以查询到姓名为 [黄镇]的客户. 在网上查询到的比较好的做法是在客户信息字段中加上一个拼音缩 ...
- php汉字首字母缩写,迅搜(XunSearch)+ThinkPHP5实现标题的拼音或拼音首字母缩写搜索...
这是两年前学习Coreseek时在问答区问的一个问题: 当时只是想了下,但没去做,现在学迅搜,又想到这个问题,干脆还是试试把它给做了吧 ^_^ 1.数据表字段 2.ThinkPHP5的model里做 ...
- 迅搜(XunSearch)+ThinkPHP5实现标题的拼音或拼音首字母缩写搜索
2019独角兽企业重金招聘Python工程师标准>>> 这是两年前学习Coreseek时在问答区问的一个问题: https://www.oschina.net/question/25 ...
- 姓名拼音首字母缩写_公司首字母缩写
姓名拼音首字母缩写 首字母缩略词可以很容易地提醒您扩展主题的引用,并且显然可以以某种方式对其进行概括,这尤其有用,尤其是当您可以将它们用作新词来快速表达关系并直截了当地时(例如提及SLA,KPI,SO ...
- 姓名拼音首字母缩写_企业开发人员,首字母缩写词和歧视
姓名拼音首字母缩写 在过去的几年中,我的客户从大多数中型市场公司和一些初创公司转变为几乎完全是初创公司,这种转变导致客户要求的语言范围更加广泛. 在我职业生涯的前10年中,我的业务约占Java的95% ...
最新文章
- Word2Vec 使用总结
- Docker selenium自动化 - 执行程序没反应、不执行原因,强制处理之前失败的进程,“... requests waiting for a slot to be free“问题解决
- Spring解决循环依赖
- 常见的锁策略、synchronized中的锁优化机制
- 生活在继续,梦,也要继续
- VS 安装部署项目自解压程序解压后按顺序执行多个程序
- Android BT种子文件解析
- uniapp仿京东地址选择插件
- 提高百度网盘下载速度的方法
- 普通的dub的sdl配置
- Docker执行命令提示设备没有相对空间,无法创建,overlay2文件夹磁盘占满
- 基于SSM超越宠物医院诊治系统
- 解决AudioCont...HTMLMediaElement already connected previously to a different MediaElementSourceNode.问题
- 【泰国留学那些事】水灯节--泰国人极致浪漫的艺术画像
- 盛迈坤电商:电商运营要怎么样进行选款
- 什么是等保三级?等保三级的认证流程有哪些?
- D类放大器背后的奥秘
- 天津大学异地新校区,首次曝光设计效果图!
- ultraedit编辑器快速学习
- emWin中文字库显示详细教程(简单直接)
热门文章
- 计算机内部电路,微型计算机的内部基本组成电路.ppt
- 选择正确的CE版本然后下载
- 为什么要使用数据字典?(若依脚手架)
- mysql更新多字段sql_SQL UPDATE 更新语句用法(单列与多列)
- 德国语言考试c1,德国留学语言考试
- 合合信息递交科创板招股说明书,智能文字识别+商业大数据双轮驱动
- 打字速度测试php源码,在线测试打字速度(一分钟打字速度测试)
- 【OpenCV 例程300篇】204. 图像的色彩风格滤镜
- 微信支付(商户平台)卡券开发文档
- div中内嵌并排div的显示问题