java獲取漢字首字母 如何用Java語言編寫這樣一個程序,“接收一個字符串,將字符串中每個單詞的首字母改為大寫”?
如何用Java語言編寫這樣一個程序,“接收一個字符串,將字符串中每個單詞的首字母改為大寫”?這應(yīng)該是比較容易實現(xiàn)的吧簡單說明:拆分,遍歷數(shù)組,轉(zhuǎn)換成char數(shù)組,char[0]-32,最后還原字符串!
如何用Java語言編寫這樣一個程序,“接收一個字符串,將字符串中每個單詞的首字母改為大寫”?
這應(yīng)該是比較容易實現(xiàn)的吧
簡單說明:拆分,遍歷數(shù)組,轉(zhuǎn)換成char數(shù)組,char[0]-32,最后還原字符串
!如果原始字符串中沒有分隔符,則必須依靠字典查詢來替換它。實現(xiàn)是一樣的
如何用java、javascript和python獲取中文的拼音首字母?
這個問題不容易回答。因為我們不知道主題的意圖,也不知道是否應(yīng)該考慮復調(diào)的問題。也許我想得太多了,這里我將給出一個利用GB2312編碼表查詢拼音首字母的方案。
GB2312共有6763個漢字,其中一級漢字3755個,二級漢字3008個,全角漢字682個。其中,一級漢字按拼音字母順序排列。拼音首字母可以直接編碼查詢。但是,第二級漢字是按字根排列的,所以無法檢查。他們只能自己做一個對照表。
根據(jù)GB2312編碼規(guī)則,可在下表中查詢。
百度可以找到完整的編碼表。
我只能為這3000個單詞制作自己的表格。我有一個暗算,就是找到拼音輸入法的數(shù)據(jù)表,整理出來使用。此方法可能涉及版權(quán)問題,因此我將不詳細說明。
JavaScript的限制
JavaScript在瀏覽器上執(zhí)行。攜帶一個巨大的對照表可能會嚴重影響網(wǎng)頁的下載速度。建議只對應(yīng)一級漢字。另外,JS沒有代碼轉(zhuǎn)換功能,所以應(yīng)該盡量避免代碼轉(zhuǎn)換。如果我們無法避免,我們只能自己編寫轉(zhuǎn)換函數(shù)。雖然網(wǎng)上有很多例子,但并不十分可靠。有必要了解單個代碼中的轉(zhuǎn)換錯誤。
算法注意事項
如果攜帶兩級漢字對照表,需要考慮提高查詢速度。二叉樹算法是一個很好的選擇。
在EXCEL中,如何提取一段英文的每個單詞的首字母,例如:DO YOU EVER THINK ABOUT ME提取出:DYETAM?
=微調(diào)(MID(A1,SMALL)(IF(MID(“”&A1& “”,ROW($1:$99),1)=“”,ROW($1:$99),100),1),1)&MID(A1,SMALL)(IF(MID(“”&A1& “”,ROW($1:$99),1)=“”,ROW($1:$99),100),2),1)&MID(A1,SMALL)(IF(MID(“&A1& “”,ROW($99),1)=”“,行($1:$99),100),3),1)和ampMID(A1,SMALL(IF(MID(“&A1&”,行($1:$99),1)=“”,行($1:$99),100),4),1)和ampMID(A1,SMALL(IF(MID(“&A1&”,行($1:$99),1)=“”,行($1:$99),100),5),1)和ampMID(A1,SMALL(IF(MID(“&A1&”,行($99),1)=”“,行($1:$99),100),6),1)和ampMID(A1,SMALL(IF(MID(“&A1&”,行($1:$99),1)=“”,行($1:$99),100),7),1)和ampMID(A1,SMALL(IF(MID(“&A1&”,行($1:$99),1)=“”,行($1:$99),100),8),1)和ampMID(A1,SMALL(IF(MID(“&A1&”,行($99),1)=”“,行($1:$99),100),9),1)和ampMID(A1,SMALL(IF(MID(”“&A1&””,行($1:$99),1)=””,行($1:$99),100),10),1))公式以Ctrl-Shift返回結(jié)束。這個公式最多可以處理10個單詞