[英]How to Split an Array Element into 2 and Return a New Array with Original Element dissected?
[英]Split array [0] element and filter, then put into new table
我嘗試將句子拆分為單個單詞,然后對其進行過濾以刪除不需要的單詞。 之后,將新內容放入圖片和jsfiddle演示中的新表中。
問題是:
請觀看演示: https : //jsfiddle.net/Ashayas/xetqznLb/
屏幕:(不要害怕顏色,它們會顯示我想要實現的效果) 圖像-控制台日志
碼:
// I try to go from arr to tab
arr = [];
arr[0] = ["1. XXX Be yourself; XXX everyone else YYY is XXX already taken."];
arr[1] = ["2. Dont cry ZZZ ZZZ because its over, smile ZZZ because it happened 50.50 30:30"];
tab = [];
tab[0] = ["1.", "Be", "yourself;", "everyone", "else", "is", "already", "taken."];
tab[1] = ["2.", "Dont", "cry", "because", "its", "over", "smile", "because", "it", "happened", "50.50", "30:30"];
var unwanted_content = ["XXX", "YYY", "ZZZ"];
我不確定您的預期答案是什么。 意思是,您希望在選項卡中存儲什么?您可以結合使用join , include和split方法。 你可以嘗試這樣的事情
var splitCharacter = " "; var originalContent = [ ["1. XXX Be yourself; XXX everyone else YYY is XXX already taken.", "XXX another one"], ["2. Dont cry ZZZ ZZZ because its over, smile ZZZ because it happened 50.50 30:30"] ]; var unwantedContent = ["XXX", "YYY", "ZZZ"]; var tab = []; for (var i = 0; i < originalContent.length; i++) { console.log("*********************************"); tab[i] = originalContent[i].join(" ").split(splitCharacter); tab[i] = tab[i].filter(x => !unwantedContent.includes(x)); console.log("Original and filtered contents: "); console.log(originalContent[i]); console.log(tab[i]) console.log("_________________________________"); }
假設您具有這樣的數組設置,則可以使用正則表達式刪除不需要的內容
var unwanted_content = [/XXX/g, /YYY/g, /ZZZ/g];
var tab = [];
arr.forEach(function(array) {
var string = array[0];
unwanted_content.forEach(function(unwanted) {
string = string.replace(unwanted, '');
})
string = string.replace(/ +/g, ' ');
tab.push(string.split(' '));
})
replace(/ +/g, ' ')
是為了刪除重復的空格,因此您的數組將保持您想要的方式
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.