用PHP提取中英文詞語以及數(shù)字的首字母的方法介紹_PHP教程
推薦:基于PHP讀取TXT文件向數(shù)據(jù)庫導(dǎo)入海量數(shù)據(jù)的方法本篇文章小編為大家介紹,基于PHP讀取TXT文件向數(shù)據(jù)庫導(dǎo)入海量數(shù)據(jù)的方法。需要的朋友參考下
最近項(xiàng)目有個(gè)需求,在一個(gè)中英文(包括阿拉伯?dāng)?shù)字0-9)的海量詞庫中,提取每一個(gè)詞語的首字母:
gannicus——>G
自由自在——>Z
2B——>E
傻X——>S
復(fù)制代碼 代碼如下:www.wf0088.com
private function getfirstchar($s0){
$s=iconv('UTF-8','gb2312', $s0);
if (ord($s0)>128) { //漢字開頭
$asc=ord($s{0})*256+ord($s{1})-65536;
if($asc>=-20319 and $asc<=-20284)return "A";
if($asc>=-20283 and $asc<=-19776)return "B";
if($asc>=-19775 and $asc<=-19219)return "C";
if($asc>=-19218 and $asc<=-18711)return "D";
if($asc>=-18710 and $asc<=-18527)return "E";
if($asc>=-18526 and $asc<=-18240)return "F";
if($asc>=-18239 and $asc<=-17923)return "G";
if($asc>=-17922 and $asc<=-17418)return "I";
if($asc>=-17417 and $asc<=-16475)return "J";
if($asc>=-16474 and $asc<=-16213)return "K";
if($asc>=-16212 and $asc<=-15641)return "L";
if($asc>=-15640 and $asc<=-15166)return "M";
if($asc>=-15165 and $asc<=-14923)return "N";
if($asc>=-14922 and $asc<=-14915)return "O";
if($asc>=-14914 and $asc<=-14631)return "P";
if($asc>=-14630 and $asc<=-14150)return "Q";
if($asc>=-14149 and $asc<=-14091)return "R";
if($asc>=-14090 and $asc<=-13319)return "S";
if($asc>=-13318 and $asc<=-12839)return "T";
if($asc>=-12838 and $asc<=-12557)return "W";
if($asc>=-12556 and $asc<=-11848)return "X";
if($asc>=-11847 and $asc<=-11056)return "Y";
if($asc>=-11055 and $asc<=-10247)return "Z";
}else if(ord($s)>=48 and ord($s)<=57){ //數(shù)字開頭
switch(iconv_substr($s,0,1,'utf-8'))
{
case 1:return "Y";
case 2:return "E";
case 3:return "S";
case 4:return "S";
case 5:return "W";
case 6:return "L";
case 7:return "Q";
case 8:return "B";
case 9:return "J";
case 0:return "L";
}
}else if(ord($s)>=65 and ord($s)<=90){ //大寫英文開頭
return substr($s,0,1);
}else if(ord($s)>=97 and ord($s)<=122){ //小寫英文開頭
return strtoupper(substr($s,0,1));
}
else
{
return iconv_substr($s0,0,1,'utf-8');//中英混合的詞語,不適合上面的各種情況,因此直接提取首個(gè)字符即可
}
}
遺留問題:仍有少量詞語無法提取,如亙古不滅,的G 沒有提取出來
最終效果如圖:
分享:php判斷終端是手機(jī)還是電腦訪問網(wǎng)站代碼?php function check_wap() { if (isset($_SERVER['HTTP_VIA'])) return true; if (isset($_SERVER['HTTP_X_NOKIA_CONNECTION_MODE'])) return true; if (isset($_SERVER['HTTP_X_UP_CALLING_LINE_ID'])) return true; if (strpos(strtoupper($_SERVER['HTTP_ACCEPT']),
相關(guān)PHP教程:
- PHPNOW安裝Memcached擴(kuò)展方法詳解
- php記錄頁面代碼執(zhí)行時(shí)間
- PHP中獎(jiǎng)概率的抽獎(jiǎng)算法程序代碼
- apache設(shè)置靜態(tài)文件緩存方法介紹
- php對(duì)圖像的各種處理函數(shù)代碼小結(jié)
- PHP 關(guān)于訪問控制的和運(yùn)算符優(yōu)先級(jí)介紹
- 關(guān)于PHP語言構(gòu)造器介紹
- php/js獲取客戶端mac地址的實(shí)現(xiàn)代碼
- php5.5新數(shù)組函數(shù)array_column使用
- PHP preg_match的匹配多國(guó)語言的技巧
- php 中序列化和json使用介紹
- php采集文章中的圖片獲取替換到本地
PHP教程Rss訂閱編程教程搜索
PHP教程推薦
- PHP編程新手必看
- php筆記之:php函數(shù)range() round()和list()的使用說明
- PHP容易忘記的知識(shí)點(diǎn)分享
- web站點(diǎn)獲取用戶IP的安全方法 HTTP_X_FORWARDED_FOR檢驗(yàn)
- PHP下打開phpMyAdmin出現(xiàn)403錯(cuò)誤
- 傳奇的誕生,PHP三位創(chuàng)始人簡(jiǎn)介
- PHP教程:五個(gè)使用PHP制作動(dòng)態(tài)網(wǎng)頁的技巧
- PHP在網(wǎng)站開發(fā)中的一些優(yōu)勢(shì)
- 取得當(dāng)前插入數(shù)據(jù)庫中記錄的id值
- 《PHP設(shè)計(jì)模式介紹》第八章 迭代器模式
- 相關(guān)鏈接:
- 教程說明:
PHP教程-用PHP提取中英文詞語以及數(shù)字的首字母的方法介紹。