判斷字符串是否包含指定字符


配合這里的 方法 可以查詢數組某一項是否符合要求
方法一:
str.indexOf()
語法: str.indexOf(item, start)
參數: 
  item: 查詢的字符串值
  start: 可選的整數參數,規定在字符串中開始的位置, 他的合法值是 0 到 str.length-1 , 如果省略此參數,則會從字符串的首字符開始查詢
var list = [
      { id: 1, str: '張三' },
      { id: 2, str: '李四' },
      { id: 3, str: '王五' },
      { id: 4, str: '趙六' },
      { id: 5, str: '沈七' },
      { id: 6, str: '賬單' },
      { id: 7, str: '張挨打的' },
      { id: 8, str: '張三' },
      { id: 9, str: '張三' },
      { id: 10, str: '張三' },
    ]
    var a = list.filter(value => {
      return value.str.indexOf('四') !== -1
    })
    console.log(a); // { id: 2, str: '李四' },
 
         
注意: indexOf對大小寫敏感
如果查詢的字符串值沒有出現, 則會返回 -1
 
方法二:
str.search()方法
語法: str.search(要查詢的字符串)
參數:  該參數可以是需要在 stringObject 中檢索的子串,也可以是需要檢索的 RegExp(正則表達式) 對象。
注意: 如果沒有找到任何匹配的子串,則返回 -1
 var list = [
      { id: 1, str: '張三' },
      { id: 2, str: '李四' },
      { id: 3, str: '王五' },
      { id: 4, str: '趙六' },
      { id: 5, str: '沈七' },
      { id: 6, str: '賬單' },
      { id: 7, str: '張挨打的' },
      { id: 8, str: '張三' },
      { id: 9, str: '張三' },
      { id: 10, str: '張三' },
    ]
    var a = list.filter(value => {
      return value.str.search('四') !== -1
    })
    console.log(a); // { id: 2, str: '李四' },
 
 
 方法三:
str.match()方法
語法: str.match('value')
  str.match(regexp)
參數: 
 value:要查詢的字符串
  regexp: 要匹配的正則表達式  
var str="1 plus 2 equal 3"
document.write(str.match(/\d+/g))

var str="Hello world!"
document.write(str.match("world"))
 
 charAr() 返回在指定位置的字符,索引范圍為從 0 到 length() - 1。
 var str="abcdefghijklmn"
var str2 = str.charAt(2);
var str3 = str.charAt(8);
console.log(str2); //c
console.log(str3); //i

 

conca();連接字符串
var str1 = "hellow";
var str2 = 'world';
console.log(str2.concat(str1)); // 結果 worldhellow
 
 
 
match();在字符串內檢索指定的值或找到一個或多個正則表達式的匹配,返回的是值而不是值的位置。
var str1 = "hellow";
var str2 = str1.match('ell'); //檢索字符串,返回的是字符
var str3 = str1.match('lll');//沒有指定的字符,返回的是null
console.log(str2);
console.log(str3);
 
 
 
.replace();替換匹配的字符串
var str1 = "nihaoma";
var str2 = "henhao";
var str3 = str1.replace(str1.match('hao'),str2.match('hen'));  //找到str1的hao,找到str2的lixi,用str2替換掉str1
console.log(str3); //nihenma

 

 
search();檢索與字符串匹配的子串,返回的是地址
var str1 = "lily nihaoya zaiganma";
var str2 = "nihaoya";
var str3 = "wobuzai";
var num1 = str1.search(str2);//返回的是第一個字符所在的位置
var num2 = str1.search(str3); //未檢測到返回-1
console.log(num1); //9
console.log(num2); //-1
 
 
slice();提取字符串片段,並在新的字符串中返回被提取的部分
var str1 = 'nihaoya wobuhaoya'
console.log(str1.slice(4,9)); //4位置開始,到9的前一個位置結束
console.log(str1.slice(2,14));//start位置開始,end前一個位置結束
console.log(str1);//原字符串不變
console.log(str1.slice(-1,0)); //返回的是空字符串
console.log(str1.slice(30,100)); //長度超過字符串的長度,返回空字符串
console.log(str1.slice(-1,10));//返回的是空字符串
 
 
substr();從起始索引號提取字符串中指定書目的字符
var str = "jin tian shi 2019 nian zui hou yi tian"
var str3 = str.substr(3,19);//字符串中空格不占位置,從3開始,到19結束
console.log(str3); //  tian shi 2019 nian
 
subString();提取字符串中兩個指定索引號之間的字符
var str = "jin tian shi 2019 nian zui hou yi tian"
var str3 = str.substring(3,19);//字符串中空格占位置,從3開始,到18結束
var str4 = str.substr(3,19);//空格不占位。從3開始到19結束
console.log(str4);  // tian shi 2019 nian
console.log('-------------');
console.log(str3); // tian shi 2019 n
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
判斷字符串是否包含指定字符


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM