Показать сообщение отдельно
  #6 (permalink)  
Старый 15.12.2023, 21:52
Аспирант
Отправить личное сообщение для roland Посмотреть профиль Найти все сообщения от roland
 
Регистрация: 02.11.2023
Сообщений: 30

Сообщение от accountnujen
Может быть вы предложите более простой вариант, даже и не со split
Чтобы не строить хрустальные замки из RegExp, можно сделать так:

// обратный слеш в строках массива экранирован
const a = [
    "\\folder/asd\\asd/",
    "\\folder\\asdasd\\",
    "folder/asd/asd",
    "folder/asd\\asd"
]

a.map(s => {
    s = s.replace(/^\W+|\W+$/g, '') // убираем лишнее с начала и с конца строки
    const i = s.search(/\W/) // ищем первый разделитель
    return ~i ? [s.slice(0, i), s.slice(i + 1)] : [s] // если разделитель найден, добавляем в массив первую и вторую часть, если не найден, добавляем всю запись
})

Что делать с возвращаемым результатом колбэк-функции Array.map - решать Вам. Принцип, думаю, понятен. С условием, что разделитель состоит из 1 символа.
Ответить с цитированием