[英]Remove part of String in JavaScript
我有一个像
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中的功能吗?
感谢帮助!
查找\\n
的第一个匹配项,并仅返回其后的所有内容
var newString = str.substring(str.indexOf("\n") + 1);
+ 1
表示您还将删除换行符,以便新字符串的开头仅是原始字符串中第一个\\n
之后的文本。
您也可以使用string.replace
函数。
> var str = "test1\ntesttest2\ntest3\nstringtest4\n...5"
> str.replace(/.*\n/, '')
'testtest2\ntest3\nstringtest4\n...5'
str.substr(str.indexOf("\n")+1)
str.indexOf(“ \\ n”)+ 1获取第一个换行符后第一个字符的索引。 str.substr(str.indexOf(“ \\ n”)+ 1)从此索引获取str的子字符串
您可以使用substring(..)
函数。 它是JavaScript内置的。 从文档:
substring()方法从两个指定索引之间的字符串中提取字符,然后返回新的子字符串。
用法:
mystring.substring(start,end)
起始索引是必需的,终止索引不是必需的。 如果省略结尾索引,它将从字符串的开始到结尾子字符串。
或者您的情况是:
str = str.substring(str.indexOf('\\n')+1);
如果我理解正确的话,可以编写这样的函数
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;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.