JavaScript | Как найти первый одинарный слеш в строке и вернуть всё что до него?

JavaScript | Как найти первый одинарный слеш в строке и вернуть всё что до него?

У нас есть строка:

let str = 'https://postgrespro.ru/docs/postgresql/9.4/xfunc-sql'

Эта строка представляет собой адрес в интернете.

Мы хотим получить все символы из этой строки, которые встречаются от начала до первого одинарного слеша. По сути мы хотим получить адрес главной страницы сайта. Как это сделать?

 

Решение

Нам помогут регулярные выражения и захваты. Выполнять сопоставление по строке мы будем при помощи метода exec().

/(.*?[^\/])\/[^\/]/.exec(str)[1]

Скриншот работы выражения:

Нашли первый одинарный слеш в строке и вернули всё что до него - JavaScript
Нашли первый одинарный слеш в строке и вернули всё что до него — JavaScript

Мы вызываем метод на регулярном выражении. В ответ нам приходит массив.

Мы используем один захват круглыми скобками, поэтому вторым элементом массива будет захваченное значение. То что мы и хотели получить.

 

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

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

Метод «22.2.5.2 RegExp.prototype.exec ( string )» — https://tc39.es/ecma262/multipage/text-processing.html#sec-regexp.prototype.exec