JavaScript計算字串位元組長度
本章節分享一段程式碼例項,它實現了計算字串佔用位元組長度的功能。
程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼執行程式碼// 得到位元組長度 String.prototype.GetLen = function() { var regEx = /^[\u4e00-\u9fa5\uf900-\ufa2d]+$/; if (regEx.test(this)) { return this.length * 2; } else { var oMatches = this.match(/[\x00-\xff]/g); var oLength = this.length * 2 - oMatches.length; return oLength; } }; var str="螞蟻部落的url地址是softwhy.com"; console.log(str.GetLen());
上面的程式碼實現了我們的要求,下面對程式碼做一下簡單介紹。
單位元組的資料是0-255ASCII碼對應的資料,[\u4e00-\u9fa5\uf900-\ufa2d]所匹配的資料局勢雙位元組的(這裡我們們就不糾結到底這些都是寫什麼資料了,網上通用的基本沒錯)。如果一個字串全都是[\u4e00-\u9fa5\uf900-\ufa2d]匹配的資料,那麼就都是雙位元組的,那麼位元組數就是字串的長度乘以2。如果不全是雙位元組的,那麼首先字串長度乘以2,然後再找出單位元組數字符的數目,減去這個數目,就是字串最終的位元組長度。
相關文章
- 計算返回單、雙位元組字元混合字串長度字元字串
- golang 計算最長不重複字串長度Golang字串
- Encoding.Default.GetByteCount(),C# 獲取字串位元組長度EncodingC#字串
- 得到字串 位元組 長度 中文 兩個字元 英文一個字元字串字元
- 你不見得會計算C字串長度字串
- JavaScript - 獲取字串位元組數(函式封裝)JavaScript字串函式封裝
- 擷取 UTF8 編碼字串從首位元組開始指定寬度 (非長度)字串
- JavaScript 擷取字串右邊指定長度字元JavaScript字串字元
- javaScript中計算字串MD5JavaScript字串
- JavaScript組合字串JavaScript字串
- JavaScript獲取字串的長度區分漢字JavaScript字串
- Lua Table 長度的計算
- opencv計算曲線長度OpenCV
- 16進位制字串轉位元組字串
- 位元組流轉16進位制字串字串
- 從北航計算機到位元組演算法崗計算機演算法
- JavaScript運算元組JavaScript
- 全網最適合入門的物件導向程式設計教程:55 Python字串與序列化-位元組序列型別和可變位元組字串物件程式設計Python字串型別
- 計算機中位(bit), 位元組(byte), 字(word)的關係計算機
- JavaScript 擷取指定長度字串 區分漢字和英文字元JavaScript字串字元
- c語言中計算陣列長度的方法C語言陣列
- C語言如何計算陣列的長度C語言陣列
- 表單限制字串輸入長度字串
- String字串的最大長度是多少?字串
- 按位長度進行字串的分割輸出,長度不足補0字串
- jQuery Validate限定輸入字串的長度jQuery字串
- QT生成固定長度的隨機字串QT隨機字串
- 位元組跳動自研萬億級圖資料庫 & 圖計算實踐資料庫
- sizeof 和 strlen 計算陣列大小和長度詳解陣列
- Base58編碼的長度是如何計算的?
- C#位元組陣列byte[]和字串string如何互相轉換C#陣列字串
- 計算機組成原理 - 計算篇計算機
- 從零開始給女朋友講計算機 1 - 從位元、位元組、補碼到 ASCII、GB2312、Unicode計算機ASCIIUnicode
- 位元組跳動湖平臺在批計算和特徵場景的實踐特徵
- 字串最後一個單詞的長度字串
- JavaScript輸入字串字數倒計JavaScript字串
- 困惑度的計算
- 20241108,LeetCode 每日一題,用 Go 計算字串中最長無重複字元LeetCode每日一題Go字串字元