Помогите плз удалить из списка строки сопадающие по значению
-
Здравствуйте. Помогите, пожалуйста.
Список - Кубик - Удалить по значениюКак удалить все значения оканчивающиеся на .jpg и .JPG и .jpeg и .JPEG
Пробовал через конструктор, но так и не осилил. Спасибо заранее.
-
@kuzkuz said in Помогите плз удалить из списка строки сопадающие по значению:
Здравствуйте. Помогите, пожалуйста.
Список - Кубик - Удалить по значениюКак удалить все значения оканчивающиеся на .jpg и .JPG и .jpeg и .JPEG
Пробовал через конструктор, но так и не осилил. Спасибо заранее.Только перебором
-
@Fox said in Помогите плз удалить из списка строки сопадающие по значению:
@kuzkuz said in Помогите плз удалить из списка строки сопадающие по значению:
Здравствуйте. Помогите, пожалуйста.
Список - Кубик - Удалить по значениюКак удалить все значения оканчивающиеся на .jpg и .JPG и .jpeg и .JPEG
Пробовал через конструктор, но так и не осилил. Спасибо заранее.Только перебором
Ясно (
Тогда наверное смысла нет? перебирать лишний раз.
Я дергаю одно из значений списка, и если там .jpg и .JPG и .jpeg и .JPEG то дергаю другое значение...
-
@kuzkuz, выполнить код
[[NEW_LIST]] = [[LIST]].filter(function(a){return a.indexOf(".jpg") < 0 && a.indexOf(".jpeg") < 0 && a.indexOf(".JPG") < 0 && a.indexOf(".JPEG") < 0})
[[LIST]]
- переменная с вашим списком где есть .jpg и .JPG...
[[NEW_LIST]]
- переменная в которую будет сохранен список без .jpg и .JPG...
-
@GhostZ said in Помогите плз удалить из списка строки сопадающие по значению:
@kuzkuz, выполнить код
[[NEW_LIST]] = [[LIST]].filter(function(a){return a.indexOf(".jpg") < 0 && a.indexOf(".jpeg") < 0 && a.indexOf(".JPG") < 0 && a.indexOf(".JPEG") < 0})
[[LIST]]
- переменная с вашим списком где есть .jpg и .JPG...
[[NEW_LIST]]
- переменная в которую будет сохранен список без .jpg и .JPG...Проще было использовать toLowerCase() чем писать 4 условия
-
@Fox, не совсем понял как бы это уменьшило количество условий?
-
@GhostZ said in Помогите плз удалить из списка строки сопадающие по значению:
@Fox, не совсем понял как бы это уменьшило количество условий?
[[NEW_LIST]] = [[LIST]].filter(function(a){return a.toLowerCase().indexOf(".jpg") < 0 && a.toLowerCase().indexOf(".jpeg") < 0})
-
В любом случае, если список будет большим, а потоков много, то это может "подвешивать" БАС. Лучше задуматься над правильной организацией данных
-
@UserTrue said in Помогите плз удалить из списка строки сопадающие по значению:
В любом случае, если список будет большим, а потоков много, то это может "подвешивать" БАС. Лучше задуматься над правильной организацией данных
Спасибо за совет. Это несомненно так. Но. Мы получаем со страницы список ссылок. Среди них все подряд по понятным причинам.
Далее 2 варианта,
а) перечитывать список и составлять новый (оставляя только нужные ссылки) и потом выбирать одну, зато уже точно будет подходящая
б) последовательно со списка брать ссылку, если не подходит - выкидывать, если подходит - работать с ней. На этом цикл закончен.
Я в данном случае остаюсь на варианте б. По-моему это правильно, если нет, поправьте.
-
@kuzkuz Ну да, б) лучше, но если там небольшие списки пусть даже 1000 строк, то можно не париться
-
@UserTrue said in Помогите плз удалить из списка строки сопадающие по значению:
@kuzkuz Ну да, б) лучше, но если там небольшие списки пусть даже 1000 строк, то можно не париться
у меня по непонятным для меня причинам скрипт подвисает иногда (вернее БАС). Я тему отдельную создал, так как это (то что здесь обсуждаем) маловероятно вызывает подвисание.
-
@UserTrue said in Помогите плз удалить из списка строки сопадающие по значению:
@kuzkuz Ну да, б) лучше, но если там небольшие списки пусть даже 1000 строк, то можно не париться
Прошу прощения за назойливость.
Можно не париться и оставить в варианте б?
-
@kuzkuz said in Помогите плз удалить из списка строки сопадающие по значению:
Прошу прощения за назойливость.
Можно не париться и оставить в варианте б?Думаю можно любой вариант, небольшой список пробежит очень быстро.
-
@Fox said in Помогите плз удалить из списка строки сопадающие по значению:
[[NEW_LIST]] = [[LIST]].filter(function(a){return a.toLowerCase().indexOf(".jpg") < 0 && a.toLowerCase().indexOf(".jpeg") < 0})
Ценный код. Спасибо.
Я протестил - вполне работает если даже не менять переменную списка.
Так можно оставить или можно столкнуться в большими проблемами где то неудачно?[[LIST]] = [[LIST]].filter(function(a){return a.toLowerCase().indexOf(".jpg") < 0 && a.toLowerCase().indexOf(".jpeg") < 0})
-
@kuzkuz said in Помогите плз удалить из списка строки сопадающие по значению:
@Fox said in Помогите плз удалить из списка строки сопадающие по значению:
[[NEW_LIST]] = [[LIST]].filter(function(a){return a.toLowerCase().indexOf(".jpg") < 0 && a.toLowerCase().indexOf(".jpeg") < 0})
Ценный код. Спасибо.
Я протестил - вполне работает если даже не менять переменную списка.
Так можно оставить или можно столкнуться в большими проблемами где то неудачно?[[LIST]] = [[LIST]].filter(function(a){return a.toLowerCase().indexOf(".jpg") < 0 && a.toLowerCase().indexOf(".jpeg") < 0})
Конкретизируйте вопрос
-
@Fox said in Помогите плз удалить из списка строки сопадающие по значению:
[[LIST]] = [[LIST]].filter
[[LIST]] = [[LIST]].filter ...
а не
[[NEW_LIST]] = [[LIST]].filter ...
В таком виде список тоже получается корректный. Но будет ли он такой всегда (корректный) ?
-
@kuzkuz said in Помогите плз удалить из списка строки сопадающие по значению:
@Fox said in Помогите плз удалить из списка строки сопадающие по значению:
[[LIST]] = [[LIST]].filter
[[LIST]] = [[LIST]].filter ...
а не
[[NEW_LIST]] = [[LIST]].filter ...
https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Array/filter
Метод filter() создаёт новый массив со всеми элементами, прошедшими проверку, задаваемую в передаваемой функции.
Короче говоря проблем не будет.
-
@Fox здравствуйте. Ваш код выше очень пригодился.
Помогите, пожалуйста, если есть возможность
как удалить такие строки из списка
в них есть вхождение http или www.
но нет при этом вхождения переменной [[MARKER]]Спасибо большое заранее.
в 7 кубиков знаю как сделать, но если есть возможность оч хочется кодом, что то похожее без цикла
-
@kuzkuz said in Помогите плз удалить из списка строки сопадающие по значению:
@Fox здравствуйте. Ваш код выше очень пригодился.
Помогите, пожалуйста, если есть возможность
как удалить такие строки из списка
в них есть вхождение http или www.
но нет при этом вхождения переменной [[MARKER]]Спасибо большое заранее.
в 7 кубиков знаю как сделать, но если есть возможность оч хочется кодом, что то похожее без цикла[[LIST]] = [[LIST]].filter(function(a){return a.toLowerCase().indexOf("http") < 0 || a.toLowerCase().indexOf("www.") < 0 && a.toLowerCase().indexOf([[MARKER]]) > -1})
-
Спасибо. Но где то небольшая ошибка...
Не удаляет записи с www в которых нет вхождения [[MARKER]]Я понял, вы пишете в новый список если есть http или www и при этом есть вхождение [[MARKER]]
Но нет, так мне не оставить ещё кое какие записи.