最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

在javascript中如何得到中英文混合字符串的長度

 更新時間:2014年01月17日 15:35:29   作者:  
本文為大家介紹下Javascript中如何得到中英文混合字符串的長度,下面有個不錯的教程,感興趣的朋友可以參考下

有同事在公司的OA上發(fā)了個貼子,介紹在javascript中如何得到中英文混合字符串的長度。

用的是正則表達式。

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

var str = ”坦克是tank的音譯”;
var len = str.match(/[^ -~]/g) == null ? str.length : str.length + str.match(/[^ -~]/g).length ;

我查了一下書,有點明白了:

西文常用字符集由空格“ ”(0x20)到“~”(0x7e)構(gòu)成,漢字會落在這個字符集外,而正則表達式[^ -~]表示除空格到“~”外的字符集。
復(fù)制代碼 代碼如下:

string.match(regex) 會以數(shù)組形式返回字符串string中匹配正則表達式regex的子串,所以,
str.match(/[^ -~]/g)會以數(shù)組的形式返回一個個漢字。例如
var str = "dd大哥";
//顯示"大,哥",數(shù)組中返回兩個漢字,數(shù)組長度為2
alert(str.match(/[^ -~]/g));

這樣,var len = str.match(/[^ -~]/g) == null ? str.length : str.length + str.match(/[^ -~]/g).length ;就可以得到str的正確長度了。

在javascript中,一個漢字的長度也被計算為1,常常在提交到數(shù)據(jù)庫中造成長度超標的錯誤,現(xiàn)在用這個方法,可以在提交前先檢測一番了。

注:以上代碼有些符號有問題,經(jīng)修正后,改為如下函數(shù)。
復(fù)制代碼 代碼如下:

function get_strlength (str)
{
var len = 0;

if (str.match(/[^ -~]/g) == null)
{
len = str.length;
}
else
{
len = str.length + str.match(/[^ -~]/g).length;
}

return len;
}

相關(guān)文章

  • 簡單純js實現(xiàn)點擊切換TAB標簽實例

    簡單純js實現(xiàn)點擊切換TAB標簽實例

    選項卡效果代碼,無jq,JS來實現(xiàn),灰色風(fēng)格,沒有怎么美化,或許看上去比較普通,不過兼容性和操作起來挺舒服的,風(fēng)格適用于大部分的網(wǎng)站,或許你會用得上。
    2015-08-08
  • layui.use模塊外部使用其內(nèi)部定義的js封裝函數(shù)方法

    layui.use模塊外部使用其內(nèi)部定義的js封裝函數(shù)方法

    今天小編就為大家分享一篇layui.use模塊外部使用其內(nèi)部定義的js封裝函數(shù)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09
  • 微信小程序骨架屏的實現(xiàn)方法

    微信小程序骨架屏的實現(xiàn)方法

    本文主要介紹了微信小程序骨架屏的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • JavaScript實現(xiàn)刷新不重記的倒計時

    JavaScript實現(xiàn)刷新不重記的倒計時

    網(wǎng)上關(guān)于JavaScript實現(xiàn)倒計時的文章有很多,但是一般都是刷新后會重新開始計時,可是我們有的時候會需要刷新卻不重新計算的倒計時,這該怎么做呢?下面我們一起來看看這種倒計時怎么實現(xiàn)吧。
    2016-08-08
  • JS兩個數(shù)組比較,刪除重復(fù)值的巧妙方法(推薦)

    JS兩個數(shù)組比較,刪除重復(fù)值的巧妙方法(推薦)

    下面小編就為大家?guī)硪黄狫S兩個數(shù)組比較,刪除重復(fù)值的巧妙方法(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • javascript閉包的理解

    javascript閉包的理解

    這篇文章主要介紹了js閉包的相關(guān)知識,閉包是Javascript的一個難點,但也是一個很重要的知識點,需要的朋友可以參考下
    2015-04-04
  • JavaScript中的執(zhí)行環(huán)境和作用域鏈

    JavaScript中的執(zhí)行環(huán)境和作用域鏈

    這篇文章主要介紹了JavaScript中的執(zhí)行環(huán)境和作用域鏈,幫助大家更好的理解和學(xué)習(xí)JavaScript,感興趣的朋友可以了解下
    2020-09-09
  • js字符串去重復(fù)id的實現(xiàn)代碼

    js字符串去重復(fù)id的實現(xiàn)代碼

    最近由于需要我們將相關(guān)id的重復(fù)的去掉,一個是客戶端一個后臺程序把關(guān),這里分享下js的去重復(fù)id的實現(xiàn)代碼
    2013-07-07
  • JS和Canvas實現(xiàn)圖片的預(yù)覽壓縮和上傳功能

    JS和Canvas實現(xiàn)圖片的預(yù)覽壓縮和上傳功能

    這篇文章主要介紹了JS和Canvas實現(xiàn)圖片的預(yù)覽壓縮和上傳功能,實現(xiàn)此功能大概有兩步,第一步用戶選擇需要上傳的圖片,第二步獲取圖片資源壓縮預(yù)覽上傳,具體實現(xiàn)代碼大家參考下本文
    2018-03-03
  • 如何利用JS通過身份證號獲取當事人的生日、年齡、性別

    如何利用JS通過身份證號獲取當事人的生日、年齡、性別

    身份證可以識別一個人的信息,下面就介紹一下如何利用js通過身份證號碼獲取當事人的年齡和性別
    2016-01-01

最新評論

五大连池市| 信阳市| 罗江县| 正镶白旗| 旌德县| 安宁市| 宜城市| 塔河县| 铜梁县| 上犹县| 莫力| 高邮市| 宣武区| 公安县| 崇信县| 大新县| 师宗县| 台北县| 兴化市| 漳平市| 太仆寺旗| 长汀县| 苏尼特左旗| 怀化市| 榕江县| 同德县| 沙河市| 偏关县| 洛川县| 资源县| 宁都县| 昌黎县| 阿克苏市| 曲水县| 红安县| 永安市| 古交市| 左云县| 汕头市| 鞍山市| 镇平县|