В JavaScript, если у меня есть текстовый блок, как такУдалить строку текста в JavaScript
Line 1
Line 2
Line 3
Что мне нужно сделать, чтобы позволяет сказать, удалить первую строку и превратить его в:
Line 2
Line 3
В JavaScript, если у меня есть текстовый блок, как такУдалить строку текста в JavaScript
Line 1
Line 2
Line 3
Что мне нужно сделать, чтобы позволяет сказать, удалить первую строку и превратить его в:
Line 2
Line 3
Чистейшим способ сделать это состоит в использовании раскола и присоединиться к функции, которые позволят вам манипулировать текстовый блок в виде массива строк, например, так:
// break the textblock into an array of lines
var lines = textblock.split('\n');
// remove one line, starting at the first position
lines.splice(0,1);
// join the array back into a single string
var newtext = lines.join('\n');
в двух словах: (. и в том числе его) Посмотрите на первой линии возврата (\ п) и использовать функцию JavaScript replace
, чтобы удалить все до него
Вот RegEx, что делает его (surprisi ngly сложно, по крайней мере для меня ...)
<script type = "text/javascript">
var temp = new String('Line1\nLine2\nLine3\n');
temp = temp.replace(/[\w\W]+?\n+?/,"");
alert (temp);
</script>
Поскольку вы используете параметр/g paramater («global replace»), я считаю, что это выражение будет иметь эффект удаления всех строк (кроме последнего, если оно не завершено с помощью новой строки). –
Я заметил это, спасибо. Проблемы с пресловутыми ножницами здесь ... – LesterDove
Я думаю, что вопрос был скорее направлен на удаление * конкретной строки *, а не только на первой строке. Это решение не слишком хорошо работает для удаления произвольных строк по числу или по контенту. – ShZ
var firstLineRemovedString = aString.replace(/.*/, "").substr(1);
Это удаляет первую строку из переменной строки многострочных - протестирован в Chrome версий 23 на переменном, которая прочитанную из файла (HTML5) с концами строк/перерывами, которые показали, как CRLF (каретка return + line feed) в Notepad ++:
lines = lines.substring(lines.indexOf("\n") + 1);
Надеюсь, что это поможет!
Это хорошо для больших файлов, потому что это позволяет избежать создания гигантского массива. –
Это правильный подход, если текст имеет много строк. –
Надеюсь, что никто больше не использует один раз для разрывов строк. – Andy
вы можете сделать это в одной строке: 'textblock.split (" \ n "). Slice (1) .join (" \ n ")' – nickf
Это неэффективно для большого текста со многими строками, используйте 'indexOf 'в этом случае. –