我有一个看起来像这样的列表
/listing/vasita-otomobil-volkswagen-boyasiz-2016-passat-variant-1.6-tdi-dsg-higline-sunroof-hayalet-819608311/detail,#,#,,/listing/vasita-otomobil-volkswagen-boyasiz-2016-passat-variant-1.6-tdi-dsg-higline-sunroof-hayalet-819608311/detail,https://eminefeegehan.sahibinden.com/en/,#,#....
我想删除所有不包含单词清单的内容。我知道一个班轮功能
_.without(arr, '#')
,但是它只删除#并将空项保留在那里。如果要从此处删除该项目,我希望减少列表的长度。此外,使用此功能不会删除包含https:
的项目答案 0 :(得分:1)
要从数组中删除多个元素,可以使用具有自己逻辑的过滤器功能。
files = [ ]
for dirpath, dirnames, filenames in os.walk(rawdata):
files.extend ( filenames )
with mp.Pool( 4 ) as p:
p.map( process_file , files )
答案 1 :(得分:1)
如果我对您的理解正确,那可能会对您有所帮助。
var arr = ['/listing/vasita-otomobil-volkswagen-boyasiz-2016-passat-variant-1.6-tdi-dsg-higline-sunroof-hayalet-819608311/detail','#','#','','/listing/vasita-otomobil-volkswagen-boyasiz-2016-passat-variant-1.6-tdi-dsg-higline-sunroof-hayalet-819608311/detail','https://eminefeegehan.sahibinden.com/en/'];
var results = arr.filter(function(item){return item.indexOf(/listing/) !== -1});
console.log(results);
答案 2 :(得分:0)
您可以使用数组的splice
方法和indexof
方法
const array = ['a', 'b', 'c', 'd', 'e', 'f'];
const valueToRemove = 'c'
const index = array.indexOf(valueToRemove);
if (index > -1) {
array.splice(index, 1);
}
// array = ['a', 'b', 'd', 'e', 'f']
console.log(array);