Номер строки в которой есть совпадение.



  • Как можно узнать номер строки в которой есть совпадение указанного текста?
    Например есть список:

    213 
    165 
    5223 
    

    и мне нужно узнать номер строки, где есть 165, у меня вариантов кроме как брать каждую строку и проверять совпадение что то нет, но если список большой это займет время, может как то проще можно.



  • @Canine есть готовый метод для этого https://learn.javascript.ru/array-methods#indexof-lastindexof



  • @out Можешь пример дать, я что то не пойму, как номер строки получить в которой нашлось совпадение. p.s Строка не полностью совпадает, а частично.



  • This post is deleted!


  • @Canine а ты уверен, что та функ именно для частичного совпадения? (скорее всего, там также идет точное сравнение.)

    если нужна проверка частичного вхождения то так:

    VAR_MYLIST = [ "213","165","5223" ];
    
    for (var i=0; i<VAR_MYLIST.length; i++){
      if (VAR_MYLIST[i].indexOf("23") > -1) {
          log("Индекс: "+ i +". Элемент списка: "+ VAR_MYLIST[i]);
          break;
      }
    }
    

    вместо 23 искомая подстрока.
    этот код выведет Индекс: 2. Элемент списка: 5223

    и задача описана не полностью, нужно детальнее понимать свою задачу. например, что выдавать если в списке не оказалось подходящего элемента. И условия поиска, может тебе не достаточно indexOf там будет.



  • @out Да, в программе там точное совпадение. Спасибо!



  • @out Ну да, по идее если значение будет, то мне нужно сохранить url страницы в файл, а если нет совпадения, то пропустить просто.Там еще зависимость от регистра есть, а совпадения могут быть разного регистра. Нашел как с этим борются, просто возводят всё в верхний регистр .toUpperCase()


Log in to reply
 

  • 11
  • 6
  • 16
  • 19
  • 2
  • 4
  • 3
  • 4