Как правильно отрезать часть строки?

Здравствуйте!

Помогите пожалуйста решить следующую задачку..

Есть несколько вариаций строк:
+... ... ... ... ... ..
+.. ... ... ... ... ..
+.... ... ... ... ... ..

В начале каждой строки есть плюс и несколько точек -> +......кол-во точек может меняться

Как мне с помощью js высчитать это кол-во точек, что идут следом за плюсом и отсечь их

То есть, нужно так:
+... ... ... ... ... .. -> ... ... ... ... ..
+.. ... ... ... ... .. -> ... ... ... ... ..
+.... ... ... ... ... .. -> ... ... ... ... ..

По сути - нужно удалить начало строки до первого пробела
  • Вопрос задан
  • 38 просмотров
Решения вопроса 1
delphinpro
@delphinpro Куратор тега JavaScript
frontend developer
ChatGPT рулит =)

let inputString = "+... ... ... ... ... ..";
let stringArray = inputString.split(" "); // разбиваем строку по пробелам
stringArray.shift(); // удаляем первый элемент массива
let outputString = stringArray.join(" "); // склеиваем оставшиеся элементы массива в строку
console.log(outputString); // выводим результат в консоль


Ну а я перепишу по своему

let inputString = "+... ... ... ... ... ..";
let result = inputString.split(" ").slice(1).join(" ");
console.log(result);
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@rPman
тут два подхода

Первый, считаем количество точек, до символа 'не точка', либо
удалить начало строки до первого пробела
считаем количество символов до пробела.
Затем простым substr вырезаем строку с найденной позиции.

Второй способ, написать регулярное выражение (промышленный стандарт по работе со строками, просто но часто избыточно по ресурсам) которое выделит нужную строчку, и посмотреть ее размер или сразу вызвать что то типа string.replace(/регулярное выражение/,'')

в регулярном выражении символ начала строки - ^, повторение символа + после этого символа, точка и плюс в регулярных выражениях зарезервирована, значит нужно добавить \ перед ними, типа так: /^\+\.+/

Если количество точек может быть нулевым (т.е. плюс и сразу пробел) значит вместо + использовать *
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы