以字符串限制回车

时间:2013-12-12 18:04:43

标签: javascript jquery

我在这样的字符串中得到回车的数量

var str = str.split(/\n/).length;

我想限制我的字符串,以便在5 cr之后字符串仅删除允许的最大值后的回车。 谁能为这个语法提供帮助。
谢谢,这是我的尝试。


这会在5之后展平整个字符串,我想保留前5 然后展平然后字符串

function countLineBreaks(str){
    var n = str.split(/\n/).length;
        return n;
};
var n = countLineBreaks(myStr);

if(n > 5)
    str = str.replace(/\n/g, " ");// replace cr's with empty space after 5

2 个答案:

答案 0 :(得分:3)

您可以使用正则表达式执行此操作,但您也可以通过拆分和加入来执行此操作:

var split = str.split("\n");
var first6 = split.splice(0, 6); // remove first 6 elements into first6
var result = first6.join("\n") + (split.length ? " " + split.join(" ") : "");

答案 1 :(得分:2)

拆分数组,合并5之后的所有项目,然后将其重新加入。

function trimString(str) {
  var lines = str.split(/\n/);
  if(lines.length > 5) {
    var rest = lines.slice(5);
    lines.length = 5;
    lines[5] = rest.join(' ');
  }
  return lines.join('\n');
}