我尝试用新行分割文本,然后存储到数组中,数组返回的长度为5
。但我的输入文件有四行。如何删除最后一个新行。
$.get('patrn', function (file) {
var filedata = file;
var seq = new Array;
seq = filedata.split("\n");
var seqpass = new seqleng(seq);
}, 'text');
function seqleng (b){
//Pdat = b.replace(/[\n]/gm,""); //But this is not working
var Pdat = b;
alert(Pdat.length);
}
我的输入文件就像这样
PQEMTGKPLFIVE
AAAG
MTG
KPLFIVE
答案 0 :(得分:1)
在使用String.prototype.trim
(IE9 +)拆分之前,您需要修剪字符串。它将删除空格,包括字符串开头和结尾的新行:
var filedata = file.trim();
seq = filedata.split("\n");
如果需要IE8支持,那么jQuery带有类似的实用程序$.trim
:
var filedata = $.trim(file);
答案 1 :(得分:0)
您的代码已将字符串拆分为数组。你不能使用regexp来处理数组(regexp用于字符串),在这种情况下你需要显式代码:
function seqleng(b) {
if (b[b.length-1] === "") {
b.pop();
}
...
}