在JavaScript中删除部分String

时间:2015-04-15 12:56:54

标签: javascript string substring

我有一个类似

的字符串
var str = "test\ntesttest\ntest\nstringtest\n..."

如果我在字符串中达到了已配置的行数(' \ n'),我想删除第一行。这意味着所有文字都是第一个' \ n'。

在:

var str = "test1\ntesttest2\ntest3\nstringtest4\n...5"

后:

var str = "testtest2\ntest3\nstringtest4\n...5"

我可以使用Javascript中的函数吗?

感谢您的帮助!

5 个答案:

答案 0 :(得分:3)

查找\n的第一次出现并仅返回其后的所有内容

var newString = str.substring(str.indexOf("\n") + 1);

+ 1表示您还删除换行符,以便新字符串的开头只是原始字符串中第一个\n之后的文本。

答案 1 :(得分:1)

您也可以使用string.replace功能。

> var str = "test1\ntesttest2\ntest3\nstringtest4\n...5"
> str.replace(/.*\n/, '')
'testtest2\ntest3\nstringtest4\n...5'

答案 2 :(得分:0)

str.substr(str.indexOf("\n")+1)

str.indexOf(" \ n")+ 1获取第一个换行符后第一个字符的索引。 str.substr(str.indexOf(" \ n")+ 1)从此索引开始获取str的子字符串

答案 3 :(得分:0)

您可以使用substring(..)功能。它内置JavaScript。来自文档:

  

substring()方法从两个指定索引之间的字符串中提取字符,并返回新的子字符串。

     

用法:

     

mystring.substring(start,end)

起始索引是必需的,结束索引不是。如果省略结束索引,它将从字符串的开头到结尾进行子串。

或者在你的情况下,例如:

str = str.substring(str.indexOf('\n')+1);

答案 4 :(得分:0)

如果我理解正确,你可以写一个这样的函数

function removePart(str, count) {  
    var strCount = str.split('\n').length - 1;
    if(count > strCount) {   
        var firstIndex = str.indexOf('\n');
        return str.substring(firstIndex, str.length -1);
    }
    return str;
}