JavaScript-textarea,将每行字符串在每次哈希后拆分为一个数组。

JavaScript-textarea,将每行字符串在每次哈希后拆分为一个数组。,javascript,html,Javascript,Html,如何获取“textarea”上的所有行,然后将它们拆分为一个数组;例如:我在文本区域有3行,如下所示: #first name #id #mark #second name #id #mark #third name #id #mark 因此,我需要将每一个哈希“#”之后的行文本拆分为一个私有数组,也包括所有行。您可以使用id对文本区域进行寻址,并拆分行和项的字符串 var content=document.getElementById('area')。值, 结果=content.split

如何获取“textarea”上的所有行,然后将它们拆分为一个数组;例如:我在文本区域有3行,如下所示:

#first name #id #mark
#second name #id #mark
#third name #id #mark

因此,我需要将每一个哈希“#”之后的行文本拆分为一个私有数组,也包括所有行。

您可以使用
id
对文本区域进行寻址,并拆分行和项的字符串

var content=document.getElementById('area')。值,
结果=content.split('\n').map(函数(a){
返回a.split(/\s?#/).slice(1);
});
控制台日志(结果)
。作为控制台包装{最大高度:100%!重要;顶部:0;}
#名字#id#标记
#第二个名字#id#标记

#第三个名字#id#mark
似乎我太慢了,但不管怎样,给你

var data=document.getElementById('txt').value.split('\n'),
solution=data.map(v=>v.replace(/^#| | s(?=#))/g',).split('#');
console.log(解决方案)
。作为控制台包装{最大高度:100%!重要;顶部:0;}
#名字#id#标记
#第二个名字#id#标记
#第三个名字#id#mark
试试这个:

var txt = $(selector).val();
var txtArray = txt.split('\n').map(function(line){
    line = line.trim();
    return line.split('#').map(function(itemHash){
        return itemHash.trim();
    }).filter(function(itemHash){
        return itemHash != "" 
    });
}).filter(function(line){
    return line != "" 
});

分享你的研究成果对每个人都有帮助。告诉我们您尝试了什么,以及为什么它不能满足您的需求。这表明你花了时间来帮助自己,它使我们避免重复显而易见的答案,最重要的是,它帮助你得到一个更具体和相关的答案!另请参见:您希望所有元素都位于一个数组中,对吗?但是你说“所有行”是什么意思?是的,我的意思是对每一行都做相同的处理。@j08691对不起,我是社区的新手,谢谢你提供的信息。谢谢,这就是我需要的:)谢谢你的帮助:)@medomedo这是Nina解决方案的一行对三行。考虑改变你的最佳答案(: