溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么用PHP提取中英文詞語(yǔ)以及數(shù)字的首字母

發(fā)布時(shí)間:2021-07-24 09:58:39 來(lái)源:億速云 閱讀:137 作者:chen 欄目:開發(fā)技術(shù)

這篇文章主要介紹“怎么用PHP提取中英文詞語(yǔ)以及數(shù)字的首字母”,在日常操作中,相信很多人在怎么用PHP提取中英文詞語(yǔ)以及數(shù)字的首字母問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”怎么用PHP提取中英文詞語(yǔ)以及數(shù)字的首字母”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!

最近項(xiàng)目有個(gè)需求,在一個(gè)中英文(包括阿拉伯?dāng)?shù)字0-9)的海量詞庫(kù)中,提取每一個(gè)詞語(yǔ)的首字母:

gannicus——>G

自由自在——>Z

2B——>E

傻X——>S

復(fù)制代碼 代碼如下:


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');//中英混合的詞語(yǔ),不適合上面的各種情況,因此直接提取首個(gè)字符即可
        }

    }


遺留問(wèn)題:仍有少量詞語(yǔ)無(wú)法提取,如亙古不滅,的G 沒有提取出來(lái)

最終效果如圖:

怎么用PHP提取中英文詞語(yǔ)以及數(shù)字的首字母

到此,關(guān)于“怎么用PHP提取中英文詞語(yǔ)以及數(shù)字的首字母”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

php
AI