Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.04.2020, 20:41
Аватар для nastya97core
Аспирант
Отправить личное сообщение для nastya97core Посмотреть профиль Найти все сообщения от nastya97core
 
Регистрация: 04.04.2020
Сообщений: 60

Как получить слова до определённого слова и числа?
Здравствуйте. Подскажите, как с помощью регулярных выражений получить все слова до определённого?

У меня есть строки такого типа
[
'Консультация по заключению договора 400 руб. Прочие услуги: 200 руб.',
'Консультация по статье 18.1 1245.40 руб. Прочие услуги: 200 руб.',
'Договор на оказание услуг: 654.30 руб.',
'Сбор за 14 статью и за 322 определение 654.30 руб.',
]


Мне с помощью регулярных выражений нужно получить всё то, что стоит перед первой стоимостью. То есть ориентир должен быть: "(стоимость) руб.". В случае этих строк на выходе:
Код:
Консультация по заключению договора
Консультация по статье 18.1
Договор на оказание услуг
Сбор за 14 статью и за 322 определение
Помогите пожалуйста
Ответить с цитированием
  #2 (permalink)  
Старый 04.04.2020, 21:08
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

nastya97core,
<script>
let arr = [
'Консультация по заключению договора 400 руб. Прочие услуги: 200 руб.',
'Консультация по статье 18.1 1245.40 руб. Прочие услуги: 200 руб.',
'Договор на оказание услуг: 654.30 руб.',
'Сбор за 14 статью и за 322 определение 654.30 руб.',
].map(str => str.match(/(.*?)(?=\s+\d+(\.\d+)?\s?руб\.)/)[0]);
document.write(arr.join('<br>'))
  </script>
Ответить с цитированием
  #3 (permalink)  
Старый 04.04.2020, 21:18
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Можно проще - match(/^\D+/)[0]

PS. Нет, не только же цены .. )

Последний раз редактировалось laimas, 04.04.2020 в 21:21.
Ответить с цитированием
  #4 (permalink)  
Старый 04.04.2020, 21:24
Аватар для nastya97core
Аспирант
Отправить личное сообщение для nastya97core Посмотреть профиль Найти все сообщения от nastya97core
 
Регистрация: 04.04.2020
Сообщений: 60

рони,
О! Уже? Спасибо!!!

Подскажите, может вы знаете. Где лучше делать обработку? На сервере (php) или на клиенте? Что быстрее будет?
Ответить с цитированием
  #5 (permalink)  
Старый 04.04.2020, 21:27
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Сообщение от nastya97core
Что быстрее будет?
лучше на сервере, если нет какого-то хитрого взаимодействия клиента с данными.
Ответить с цитированием
  #6 (permalink)  
Старый 04.04.2020, 22:03
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от nastya97core
Где лучше делать обработку? На сервере (php) или на клиенте?
На сервере вообще не должно быть таких ситуаций когда нужно потрошить текст, если только этот текст не чужой. На сервере нужно хранить структурированные данные, а не все в куче.
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как получить в JQUERY каждую строку как отдельный объект? Alex1233 Общие вопросы Javascript 3 22.08.2014 06:54
Как получить значение переменной из игры на HTML5? Dimaz Общие вопросы Javascript 6 10.08.2014 16:27
Как вы относитесь к наркоманам? Maxmaxmaximus7 Оффтопик 7 05.02.2014 13:29
Как получить список элементов в localStorage? Бобр Общие вопросы Javascript 8 17.09.2013 14:32
Как получить raw data с image? lyapharov Общие вопросы Javascript 2 07.04.2011 00:20