JS之字符串相關

字符串概述

  • 定義: 多個字符組成的只讀字符數組
  • 只要數組中不直接修改原數組的API, 字符串都能用
    • str[i] 獲得字符串中下標爲i的字符
    • str.length 獲得字符個數
    • str.slice(starti[,endi+1]) 獲得子字符串

字符串API

  • 注意: 所有API無法修改原字符串, 都是返回新字符串
  • 大小寫轉換API
    • var newStr = str.toUpperCase; //所有字母轉大寫
    • var newStr = str.toLowerCase; //所有字母轉小寫
    • 何時使用: 凡是不區分大小寫字母的, 比如郵箱、用戶名等
  • 獲取指定位置字符API
    • var char = str.charAt(i) //同str[i]
    • var unicode = str.charCodeAt(i) //獲得i位置字符的unicode碼
  • 檢索關鍵字API
    • var i = str.indexOf(“關鍵字”[,fromi]); //從左向右獲得下一個匹配到的關鍵字的位置, 默認從最左開始檢索, 檢索包含fromi位置字符
    • var i = str.lastIndexOf(“關鍵字”[,fromi]); //從右向左獲得下一個匹配到的關鍵字的位置, 默認從最右開始檢索, 檢索包含fromi位置字符
  • 獲取子字符串API
    • var subStr = str.slice(starti[,endi+1]); //支持負數參數
    • var subStr = str.substring(starti[,endi+1]); //不支持負數參數, 可用length-n代替
    • var subStr = str.subStr(starti,n); //從開始位置截取n個字符, 含頭

支持正則的字符串API

  • 分割字符串API
    • var strs = str.split(“分隔符/exp”);
    • 何時使用:
      • 希望將字符串按照規律分割爲數組時
      • 分段處理字符串時, 需要先切割, 再遍歷
  • 查找
    • 判斷有無: var i = str.search(exp);
      • 只找第一個匹配到的,找到則返回關鍵字位置, 如果沒找到, 返回-1
      • 無法修改開始查找的位置
      • 無法繼續查找之後的所有關鍵詞
    • 獲得所有關鍵字的內容和個數: reg結尾+g
      • var kwords = str.match(exp)
      • 如果exp結尾+g, 表示查找全部匹配關鍵詞, 否則, 默認僅查找第一個匹配到的關鍵詞
      • 如果沒找到, 返回null
      • 正則默認區分大小寫, 若要忽略大小寫, exp結尾+i
      • 返回值爲匹配到的關鍵字組成的數組
  • 替換: str = str.replace(exp,”替換值”);
    • 替換一般都要加g, 即全局匹配
    • 返回值爲替換後的新串

格式化字符串操作步驟

  1. 利用正則表達式將原字符分組匹配
  2. 將正則表達式傳入repalce中, 使用替換值格式化字符串
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章