漢字轉拼音類

2021-07-14 09:41:25 字數 1286 閱讀 1854

<?php

/*** 漢字轉拼音類

* 輸入的漢字字串統一先轉換為gbk,然後進行拼音轉換,英文和標點符號原樣輸出。

* utf-8 -> gbk -> pinyin -> utf-8

* 注:多音字無法識別,轉換漢字為一級漢字3千多個,生僻字不行,

*     字串中個別特殊符號的存在可能造成轉換輸出不正確

*/class cntopinyin

// 返回首字母

private function _substr($s)

// 返回大寫首字母

private function _substrtoupper($s)

// 返回首字母大寫的字串

private function _ucfirst($s)

// 分析字串,將一級漢字字元轉成編碼,再從拼音音節表中查詢拼音,存入陣列中。

private function strtocode($str)

$char=$this->codetopinyin($p);

if($char==null)

else}}

// 將編碼從拼音音節表中查詢拼音,

// [0,160]返回英文本元

// >-10247 or <-20319返回空

// 其它返回拼音字串

private function codetopinyin($num)

elseif($num<-20319||$num>-10247)

else}}

/*printpinyin:輸出轉換後的拼音字串,漢字轉成拼音,其它字元保持原樣

$strcn : 輸入的中文字串

$delimiter : 輸出每個漢字拼音之間分隔符

$mode : 0為全拼輸出(字母小寫)  1為簡拼輸出(每個漢字第乙個字母,字母小寫)

2為全拼輸出(字母全大寫)3為簡拼輸出(字母大寫)

4為全拼輸出(首字母大寫)

$code : 輸入的中文字串編碼方式,utf-8,gbk,gb2312

返回值:帶有分隔符的拼音字串

$a=new cntopinyin();

$cn='字串';

$str=$a->printpinyin($cn,' ',0,'utf-8');

*/function printpinyin($strcn, $delimiter='', $mode=0, $code='gbk')

if($code!='gbk') $str=iconv('gbk',$code,$str);

return $str;}}

漢字轉拼音類

using system using system.collections.generic using system.linq using system.web using system.text using system.text.regularexpressions 定義陣列 private s...

漢字轉拼音的類

今天有了個關於漢字相關的想法,會用到拼音,所以就上網搜尋了一下如何將漢字自動轉換為拼音,沒想到還真有,呵呵。把 貼上到這裡吧,大家一起學習。using system using system.collections.generic using system.text using system.tex...

漢字轉拼音工具類

public class pinyin4jutils 將字串轉換成拼音陣列 param src return public static string stringtopinyin string src,string separator 將字串轉換成拼音陣列 param src param ispo...