【问题标题】:how to use indexOf to determine if a certain set of characters in Javascript如何使用 indexOf 确定 Javascript 中的某个字符集
【发布时间】:2013-03-06 10:37:45
【问题描述】:

假设我有一个包含 30 个字符串的数组。

我想确定字符串是否包含“ea”字符,然后我会提醒包含 ea 的字符串。

我想使用 indexOf 我该怎么做?

假设我有一个数组

var new = ["banana","apple","orange"];

我尝试过类似...

new_an = new.indexOf("an");
for (i=0; i < new.length;i++ )
{

if (new_an = -1)
{
    alert(new[i]);
}
}

所以只有香蕉和橙子有一个,我只想提醒这两个......但不确定我在这里错过了什么......

【问题讨论】:

  • 请提供您的数组示例!
  • I want to determine if the string 哪个是 字符串?你有一个包含 30 个字符串的数组,对吗?
  • 马太米海已贴出正确答案。除此之外,@new@ 是保留关键字,因此不是有效的变量名。

标签: javascript arrays list indexof


【解决方案1】:

indexOf 如果给定字符串中没有匹配项,则返回 -1。你可以这样做:

var arr = ["string 1", "string 2", "string 3", "test"];
for(var i = 0; i < arr.length; i++) {
  if(arr[i].indexOf('str') != -1) {
    console.log(arr[i]);
  }
}

这个例子的输出应该是:string 1, string 2, string 3

【讨论】:

    【解决方案2】:

    在字符串数组的循环中使用以下解决方案。

    Example
    
    Search a string for "welcome":
    
    var str="Hello world, welcome to the universe.";
    var n=str.indexOf("welcome");
    The result of n will be:
    
    13
    

    See here for more details

    【讨论】:

      【解决方案3】:

      我会简单地遍历数组,然后用String.contains() 检查您的搜索字符串是否在原始字符串中。

      str.contains(searchString);
      

      【讨论】:

        【解决方案4】:
        function searchStringInArray (str, strArray) {
            for (var j=0; j<strArray.length; j++) {
                if (strArray[j].match(str)) return j;
            }
            return -1;
        }
        

        j 是 str 在数组中的索引。

        【讨论】:

          【解决方案5】:

          一种使用filter的方式;

          var it   = ["aea", "b", "c", "dea", "eee", "fea"];
          var find = "ea";
          
          var matches = it.filter(function(el) {
            return el.indexOf(find) > -1;
          });
          
          alert(matches);
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2015-01-10
            • 2011-02-07
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2014-07-03
            相关资源
            最近更新 更多