JavaScript | Как обрезать строку до символа?

JavaScript | Как обрезать строку до символа?

 

Функция обрезания строки до нужного символа (отрежет только начало)

Функция принимает две строки:

  • Первая — это основная строка которую нужно обрезать.
  • Вторая — это строка-ориентир перед которой нужно отрезать лишнее.

Возвращает оставшуюся часть и строку-ориентир. Обрезается только начало.

 

function cutMyStrStartMin(str, char){

    return str.replace(new RegExp(`.*?(${char}.*)`), ‘$1’)

}

 

cutMyStrStartMin(Фотограф сде/лал снимок, ‘/’)

‘/лал снимок

cutMyStrStartMin(Фотограф сделал снимок, ел)

‘елал снимок’

cutMyStrStartMin(‘Фотограф сделал снимок’, ‘ ‘)

‘ сделал снимок’

 

 

Скриншот работы функции из браузера:

Функция обрезания строки до нужного символа - отрезает только начало JavaScript
Функция обрезания строки до нужного символа — отрезает только начало JavaScript

 

Функция с удалением начала и искомого символа

Функция принимает две строки:

  • Первая — это основная строка которую нужно обрезать.
  • Вторая — это строка-ориентир вместе с которой нужно отрезать лишнее в начале.

Возвращает только конечную часть БЕЗ строки-ориентира и БЕЗ начала.

 

function cutMyStrStartMax(str, char){

    return str.replace(new RegExp(`.*?${char}(.*)`), ‘$1’)

}

 

cutMyStrStartMax(Машина ед/ет быстро, ‘/’)

‘ет быстро’

cutMyStrStartMax(‘Машина едет быстро’, ‘де’)

‘т быстро’

cutMyStrStartMax(‘Машина едет быстро’, ‘ ‘)

‘едет быстро’

 

 

Скриншот работы функции из браузера:

Функция обрезания строки до нужного символа - отрезает начало и искомый символ JavaScript
Функция обрезания строки до нужного символа — отрезает начало и искомый символ JavaScript

 

Собственный метод для класса String

Можно расширить стандартный набор методов класса String в JavaScript и вызывать его непосредственно на самом объекте строки.

// Методы для класса String

 

String.prototype.cutMyStrStartMin = function(char){

    return this.replace(new RegExp(`.*?(${char}.*)`), ‘$1’)

};

 

String.prototype.cutMyStrStartMax = function(char){

    return this.replace(new RegExp(`.*?${char}(.*)`), ‘$1’)

}

 

Пример работы методов:

Два метода обрезания строки до нужного символа - JavaScript
Два метода обрезания строки до нужного символа — JavaScript

 

Информационные ссылки

JavaScript | Как обрезать строку после символа?

Стандарт ECMAScripthttps://tc39.es/ecma262/multipage/

Стандарт ECMAScript — Раздел «22.2 RegExp (Regular Expression) Objects» — https://tc39.es/ecma262/multipage/text-processing.html#sec-regexp-regular-expression-objects