我试图取textarea的值,将其分割成不同的属性。
textfield中的数据(这是一个例子,实际输入中有很多空格):
name lastname age fruit
john doe 22 apple
eric jonsson 23 apple这是我现在的代码:
var textareadataData = $('#textareaID').val().split('\n');结果:
" name lastname age fruit"
" john doe 22 apple"
"eric jonsson 23 apple"我希望结果是:
"name","lastname","age","fruit"
"john","doe","22";"apple"
"eric", "jonsson","23","apple"我试着到处找,但没有找到答案。
向威克问好
发布于 2019-03-20 15:00:03
您可以在新行之后使用空格拆分。
下面的代码将您的新行拆分与操作相加:
green apple )
// This is your code
var textareaData = $('#textareaID').val().split('\n');
// This is the extra code you can add (split whitespaces and filter out resulting ones)
var words = textareaData
.filter(x => x.length !== 0)
.map(x => x.split(/(\s\s+)/))
.map(x => x.filter(el => el.trim()));
console.log(words)<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<textarea id="textareaID">
name lastname age fruit
john doe 22 green apple
eric jonsson 23 apple
</textarea>
发布于 2019-03-20 14:58:49
请尝试
var string = $('#textareaID').val().replace(/\s+/g,' ')regex将将所有空间替换为一个空格。
然后,您可以像往常一样使用拆分。
string.split(" ");发布于 2019-03-20 15:00:19
试着在带有正则表达式的单词之间留出一个空格:
var textData = textareadataData.replace(/\s+/g, " ");然后再用空格分割它:
var textDataArray = textData.split(" "); 然后你就有了。你可以用一行来做,但我用两行来解释。
https://stackoverflow.com/questions/55263785
复制相似问题