日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
從編輯器視角審視String的4類(lèi)26種方法

為什么string 字符串在各種語(yǔ)言中會(huì)有如此之多的 methods 呢?只須簡(jiǎn)單想一下,我們?nèi)沼玫木庉嫷娜抗δ芷鋵?shí)只不過(guò)就是在處理和操作字符串。

創(chuàng)新互聯(lián)建站主營(yíng)蘿北網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,App定制開(kāi)發(fā),蘿北h5小程序開(kāi)發(fā)搭建,蘿北網(wǎng)站營(yíng)銷(xiāo)推廣歡迎蘿北等地區(qū)企業(yè)咨詢(xún)

一、編輯器文本操作

開(kāi)始盤(pán)點(diǎn) string 的所有 methods 之前,我們首先梳理在編輯器中,處理文本文字,都有哪些操作。

第一類(lèi),選擇復(fù)制與黏貼;

第二類(lèi),具體的編輯操作,寫(xiě)入文本,查詢(xún)修改,以及刪除;

第三類(lèi),撤銷(xiāo)與重復(fù)操作;

第四類(lèi),補(bǔ)全操作,語(yǔ)法檢查以及斷行等。

下面,我們將按照以上編輯器文本處理的類(lèi)型,對(duì)所有string的方法作分類(lèi)。

二、String 字符串操作的分類(lèi)

事實(shí)上,我們每日所處理的文本內(nèi)容,文件的內(nèi)容就是 string。

第一類(lèi)、選擇與復(fù)制(2種方法)

首先編輯器處理文本內(nèi)容的第一類(lèi),黏貼與復(fù)制,就是光標(biāo)選中文本的特定區(qū)域,執(zhí)行復(fù)制與黏貼操作。對(duì)應(yīng)到 string 操作中,就是 substring, slice.

 
 
 
 
  1. > let s = "string categories" 
  2. > s.substring(7, 16) 
  3. 'categorie' 
  4. > s.substring(16, 7) 
  5. 'categorie' 
  6. // slice 與 substring 的區(qū)別只在于,substring 會(huì)自動(dòng)調(diào)整大小數(shù)的順序 
  7. > s.slice(7, 16) 
  8. 'categorie' 
  9. > s.slice(16, 7) 
  10. '' 
  11. // 特殊的 split 方法 
  12. > s.split(" ") 
  13. [ 'string', 'categories' ] 

 第二類(lèi),具體的編輯操作

在數(shù)據(jù)庫(kù)操作中,我們往往喜歡說(shuō)“增刪改查“這樣的四種操作和操作順序。乍一讀似乎朗朗上口,然而細(xì)品起來(lái),"增刪改查"的順序比較荒謬。怎么剛剛“增”了就馬上又要“刪”呢?刪除的依據(jù)是什么?不要首先查詢(xún)嗎?查詢(xún)后不要嘗試修改嗎?直至修改不好,最后一步才是“刪除”。

因此,將“增刪改查”的順序,變更為“增查改刪”。

所謂的“增“就是”字符串“的創(chuàng)建,有三種方式:

 
 
 
 
  1. s = 'string categories' // single quote 
  2. s = "string categories" // double quote  
  3. s = `string categories` // caret ` 

 其次是"查", 無(wú)論在編輯器中,還是字符串的處理過(guò)程中,查詢(xún)都是關(guān)鍵的部分。編輯器查詢(xún)往往多為regex的應(yīng)用,這對(duì)于 string 操作而言過(guò)于重型,常用的多為邏輯查詢(xún)5種。

 
 
 
 
  1. > s.charAt(0) 
  2. 's' 
  3. > s.charAt(s.length-1) 
  4. 's' 
  5. > s.startsWith('str') 
  6. true 
  7. > s.endsWith('es') 
  8. true 
  9. > s.includes('c') 
  10. true 
  11. > s.indexOf('c') 
  12. > s.lastIndexOf('c') 
  13. 7s 

 高階的regex正則查詢(xún):

 
 
 
 
  1. > s.search(/[\s]/g); 
  2. > s.search(/[\w]/g); 
  3. > s.match(/[\s]/i) 
  4. [ ' ', index: 6, input: 'string categories', groups: undefined ] 
  5. > s.match(/[\w]/i) 
  6. [ 's', index: 0, input: 'string categories', groups: undefined ] 
  7. > s.match(/[\w]/g) 
  8.   's', 't', 'r', 'i', 
  9.   'n', 'g', 'c', 'a', 
  10.   't', 'e', 'g', 'o', 
  11.   'r', 'i', 'e', 's' 
  12. > arr = [...s.matchAll(/[\w]/g)] 
  13.   [ 's', index: 0, input: 'string categories', groups: undefined ], 
  14.   ... 
  15.   [ 'i', index: 14, input: 'string categories', groups: undefined ], 
  16.   [ 'e', index: 15, input: 'string categories', groups: undefined ], 
  17.   [ 's', index: 16, input: 'string categories', groups: undefined ] 

 緊隨“查詢(xún)”的是“變更”與“修改”, 繼續(xù)regex的邏輯,我們查看 replace.

 
 
 
 
  1. > s.replace('string', 'arry') 
  2. 'arry categories' 
  3. > s.replace(/[a-z]+/, "array") 
  4. 'array categories' 
  5. > s.replaceAll() 

 其他常用的 case, transpose, join, 以及 whitespace 的操作:

 
 
 
 
  1. // CaseManipulation 
  2. > s.toLowerCase() 
  3. 'string categories' 
  4. > s.toUpperCase() 
  5. 'STRING CATEGORIES' 
  6. s.toLocaleLowerCase 
  7. s.toLocaleUpperCase 
  8.  
  9. // 對(duì) whitespace 的處理 
  10. s.trim 
  11. s.trimStart 
  12. s.trimEnd 
  13.  
  14. // 增加空格等 
  15. s.padStart 
  16. s.padEnd 
  17.  
  18. //以及多行的合并 
  19. > s.concat(' new') 
  20. 'string categories new' 

 第三類(lèi) 撤銷(xiāo)與重復(fù)操作:

沒(méi)有撤銷(xiāo)操作而只有重復(fù).

 
 
 
 
  1. > s.repeat(3) 
  2. 'string categoriesstring categoriesstring categories' 

第四類(lèi) 補(bǔ)全,語(yǔ)法檢查和斷行

此處我們姑且將 pad 作為補(bǔ)全, 而將 split 想象為斷行.

三 對(duì)底層編碼的處理

String 字符串就是文字與編碼, 因此最底層的對(duì)應(yīng)編碼的操作也歸類(lèi)此處處理.

 
 
 
 
  1. > s.charCodeAt(0) 
  2. 115 
  3. > s.codePointAt(0) 
  4. 115 
  5. > s.normalize() 
  6. 'string categories' 

 四 總結(jié)

諸上為從編輯器的慣常操作,而對(duì)string所有的methods作歸類(lèi)的盤(pán)點(diǎn)。

 
 
 
 
  1. // 1.選擇與復(fù)制 3 
  2. substring, slice, split 
  3.  
  4. // 2.具體的編輯操作, 按照“增查改刪”的原則 
  5. // 2.1 增加 1 
  6. constructor 
  7. // 2.2 查詢(xún) 8 
  8. charAt,  
  9. startsWith, endsWith,  
  10. includes, indexof, lastIndexOf, 
  11. search, searchAll 
  12. // 2.3 改 10 
  13. replace, replaceAll,  
  14. toLowerCase, toUpperCase, //Case 
  15. trim, trimStart, trimEnd, // whitespae 
  16. padStart, padEnd // completion 
  17. concat //合并 join 
  18.  
  19. // 3. 重復(fù)與撤銷(xiāo)等 1 
  20. repeat 
  21.  
  22. // 4.處理底層編碼 3 
  23. charCodeAt,codePointAt,normalize 

網(wǎng)頁(yè)名稱(chēng):從編輯器視角審視String的4類(lèi)26種方法
標(biāo)題URL:http://m.5511xx.com/article/cdoscid.html