Re: [問題] 請問如何判斷中文字串

看板Ajax作者 (沉默是金)時間16年前 (2009/01/21 09:58), 編輯推噓5(504)
留言9則, 6人參與, 最新討論串2/5 (看更多)
※ 引述《toshii (用了十年的暱稱要改一下!)》之銘言: : 假如某一字串中有阿拉伯數字,有英文,有中文,或特殊符號 : HTML或Javascript語法有比較快的方法算出其中有幾個是中文字嗎? : 我能想到方法只有creat一個Array,裡面有 : 空白,0~9,a~z,A~Z,~!@$%...等等, : 每個字元都丟進去比,都不符合就當它是中文字 : 可是好像不是很理想..特殊符號很多 : 有其他方法嗎? 以下講的是 javascript 解. 有一個不算很完善 , 但是堪用的作法是用這個 regex pattern. [\u4e00-\u9a05] (從你的文章看來你不是很瞭解 regex , 非常建議你先瞭解這個字串專用的強大工具.) 你要「算出」有幾個中文字的話 , 簡單的作法是透過 split 看有幾個區隔. //先包裝成函式... function chineseCount(word){ return word.split(/[\u4e00-\u9a05]/).length -1; } var word="test中asd文asd字as到底asd有幾asd個?"; alert(chineseCount(word)); sample page: http://iis.tonyq.org/test/testChineseWord.html -- What do you want to have ? / What do you have? 從書本中,你可以發現我的各種興趣。 從CD中,你可以瞭解我所喜歡的偶像明星。 或許從文字你很難以瞭解一個人,但從物品可以。 My PPolis , My past. http://ppolis.tw/user/Tony -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 221.169.78.140 ※ 編輯: TonyQ 來自: 221.169.78.140 (01/21 09:59) ※ 編輯: TonyQ 來自: 221.169.78.140 (01/21 10:00)

01/21 10:44, , 1F
如果是要算雙字元文字的話,這個沒有辦法檢核全形的應數字喔
01/21 10:44, 1F

01/21 10:54, , 2F
IE6.0好像不支援這個功能,firefox可以
01/21 10:54, 2F

01/21 11:31, , 3F
人家都說要「中文字」了 , 中文字跟全形字不一樣吧.XDDD
01/21 11:31, 3F

01/21 11:32, , 4F
咦 應該可以 我測一下...
01/21 11:32, 4F

01/21 11:32, , 5F
我的ie6開測試頁一切正常啊 @@
01/21 11:32, 5F

01/21 13:14, , 6F
(筆記)
01/21 13:14, 6F

01/22 21:50, , 7F
javascript不是用unicode在裝的嗎 應該沒有雙byte的問題
01/22 21:50, 7F

05/07 05:53, , 8F
對電腦來說, 中文字跟全形字是一樣的
05/07 05:53, 8F

03/01 22:06, , 9F
全形字當然是包含中文字,但是中文字卻不包含所有全形字。
03/01 22:06, 9F
文章代碼(AID): #19Te5UcM (Ajax)
文章代碼(AID): #19Te5UcM (Ajax)