Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从数组[JS]中删除新行字符串_Javascript_Arrays_String - Fatal编程技术网

Javascript 如何从数组[JS]中删除新行字符串

Javascript 如何从数组[JS]中删除新行字符串,javascript,arrays,string,Javascript,Arrays,String,这里我有一些本地函数,它应该将包含一些值的HTML标记(键)转换为数组。带有某些产品的每个结束标记都有2个'\n',包含在数组中 我怎样才能从aray删除断开的线 function cleanCatalog(s){ const separateValues = /<\/?[^>]+(>|$)/g; let newLocal = s.replace(separateValues, " "); let cleanText = newL

这里我有一些本地函数,它应该将包含一些值的HTML标记(键)转换为数组。带有某些产品的每个结束标记都有2个'\n',包含在数组中

我怎样才能从aray删除断开的线

function cleanCatalog(s){
        const separateValues = /<\/?[^>]+(>|$)/g;
        let newLocal = s.replace(separateValues, " ");
        let cleanText = newLocal;
        let catalogArray = [cleanText.split("  ")];
        return catalogArray;
    }
功能目录{
常量separateValues=/]+(>|$)/g;
让newLocal=s.replace(separateValue,“”);
让cleanText=newLocal;
让catalogArray=[cleanText.split(“”);
返回目录数组;
}
输出:

[“钻孔”,“99”,“5”↵↵","锤子","10","50",↵↵“,…]”


尝试通过排除来筛选数组


您可以使用filter返回:returncatalogarray.filter(v=>v!='\n')

可以使用
/^\s*$/
正则表达式从数组中过滤出空格。如果您有像
“\n\n”
“\t\n”
这样的项目,并且希望对它们进行筛选,则此选项非常有用

const arr=[“drill”、“99”、“5”、“n\t”、“hammer”、“10”、“50”、“n\n”];
常量ans=arr.filter(x=>!/^\s*$/.test(x));

控制台日志(ans)
您可以使用过滤功能,我看到您有一些项目具有重复的
/n
字符,我的解决方案可以解决这种情况:

catalogArray.filter(e => e.replace(/(\r\n|\n|\r)/gm, "") !== '')
例:


只需使用常规DOM方法遍历元素并获取它们的文本内容(+可选的
.trim()
)预期的输出是什么?您好,预期的输出:“[”drill“,”99“,”5“,”hammer“,”10“,”50“,…]”您的意思是像提出的解决方案一样吗?我没有尝试在这里获得特别的东西,我遇到了这个问题:我无法提交我的答案(我尝试缩进4个空格),然后我删除了所有内容,然后再次发布,它成功了,但你知道,我看到@vladimir Bogomolov得到了回答。
catalogArray.filter(e => e.replace(/(\r\n|\n|\r)/gm, "") !== '')
["drill", "99", "5", "\n\n", "hammer", "10", "50", "\n\n\n"].filter(e => e.replace(/(\r\n|\n|\r)/gm, "") !== '')
// =>  ["drill", "99", "5", "hammer", "10", "50"]