久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Javascript中得到中英文混合字符串的長度

 WindySky 2008-12-22
有同事在公司的OA上發(fā)了個(gè)貼子,,介紹在javascript中如何得到中英文混合字符串的長度。
用的是正則表達(dá)式,。
var str = ”坦克是tank的音譯”;
var len = str.match(/[^ -~]/g) == null ? str.length : str.length + str.match(/[^ -~]/g).length ;
我查了一下書,,有點(diǎn)明白了:
西文常用字符集由空格“ ”(0x20)到“~”(0x7e)構(gòu)成,漢字會(huì)落在這個(gè)字符集外,,而正則表達(dá)式[^ -~]表示除空格到“~”外的字符集,。
string.match(regex) 會(huì)以數(shù)組形式返回字符串string中匹配正則表達(dá)式regex的子串,所以,,
str.match(/[^ -~]/g)會(huì)以數(shù)組的形式返回一個(gè)個(gè)漢字,。例如
var str = "dd大哥";
//顯示"大,哥",,數(shù)組中返回兩個(gè)漢字,,數(shù)組長度為2
alert(str.match(/[^ -~]/g));
 這樣,var len = str.match(/[^ -~]/g) == null ? str.length : str.length + str.match(/[^ -~]/g).length ;就可以得到str的正確長度了,。
在javascript中,,一個(gè)漢字的長度也被計(jì)算為1,常常在提交到數(shù)據(jù)庫中造成長度超標(biāo)的錯(cuò)誤,,現(xiàn)在用這個(gè)方法,,可以在提交前先檢測一番了。

這個(gè)是去掉回車的字符長度的計(jì)算的方法
 var noteLen = note.match(/[^\r|\n| -~]/g) == null ? note.replace(/[\r|\n]/g,"").length : note.replace(/[\r|\n]/g,"").length + note.match(/[^\r|\n| -~]/g).length ;

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多