Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
Superposition
 Аватар для Padimanskas
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083

RegEx для выражения 1+2+3

19.03.2017, 15:09. Показов 1200. Ответов 7

Студворк — интернет-сервис помощи студентам
Собственно сабж. Не получается спарсить выражение 1+2+3 таким образом, чтобы например match находил 1+2 и 2+3, то есть
JavaScript
1
['1+2', '2+3']
Пробовал по-всякому, прошерстрил весь стековерфлоу - ничего не нашел. Выручайте
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
19.03.2017, 15:09
Ответы с готовыми решениями:

Как укоротить Regex выражения
Здравствуйте! Есть форма поиска с полями "ФИО","Дата рождения","Адрес","Телефон". С возможностью поиска, как стандартного, так и по...

Regex: Создать регулярное выражения для поиска строк вида: "add -s 50 -k 20".
Нужно создать регулярное выражения для поиска строк вида: "add -s 50 -k 20". При этом надо, чтобы он искал все -s и -k и другие буквы. То...

Регулярные выражения Regex
Как записать регулярное выражение, чтобы сработал код, Строка input читается из файла , а строка sPar из TextBox. И когда в TextBox такое...

7
 Аватар для Gr1f0nn
244 / 164 / 133
Регистрация: 30.09.2012
Сообщений: 690
19.03.2017, 15:46
Code
1
(1+2)|(2+3)
?
0
Superposition
 Аватар для Padimanskas
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083
19.03.2017, 20:44  [ТС]
Gr1f0nn, эх, если бы все было так просто

В выражении могут участвовать любые целые числа и выражение может быть сколь угодно большим. Например как-то вот так: 5+7+3+1+12+100500+19

тогда мы должны получить следующее:
JavaScript
1
['5+7', '7+3', '3+1', '1+12', '12+100500', '100500+19']
0
Фрилансер
Эксперт PythonЭксперт JSЭксперт PHP
 Аватар для Azdeman
1871 / 1362 / 604
Регистрация: 12.01.2011
Сообщений: 5,470
19.03.2017, 23:22
Лучший ответ Сообщение было отмечено Padimanskas как решение

Решение

А обязательно ли это делать регуляркой? Тут в регулярки потребуется я думаю рекурсия. Но первое что пришло на мысль
JavaScript
1
2
3
4
5
6
7
     let _ = '5+7+3+1+12+100500+19';
     let arr = [];
        let c = _.split('+');
    for(var i=0;i<c.length-1;i++){
        arr[i] = c[i]+'+'+c[i+1];
    }
     console.log(arr);
1
Superposition
 Аватар для Padimanskas
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083
19.03.2017, 23:41  [ТС]
Azdeman, целый день искал решение этой "проблемы", но регулярки оказались не настолько гибкими как мне всегда казалось. В общем пусть горит этот день. Ну а мой первый вариант, который "навскидку", оказался примерно такого же плана, но все равно спасибо преогромное)

JavaScript
1
2
3
4
var exp = '1+2+3+4+5+6+7', splExp = exp.split('');
for(var i=0; i < splExp.length; i++){
if(splExp[i] === '+') console.log(splExp[i-1],splExp[i],splExp[i+1]);
}
0
20.03.2017, 02:00

Не по теме:

Padimanskas, Ахах, действительно :) Тогда прошу прощения, думал, что задача намного банальнее

0
Эксперт PHP
 Аватар для Fedor Vlasenko
936 / 693 / 236
Регистрация: 01.02.2015
Сообщений: 1,848
20.03.2017, 03:20
Как вариант
JavaScript
1
2
3
4
5
6
let result = '5+7+3+1+12+100500+19'
  .split('+')
  .reduce((prev, curr, i, arr) => {
    i && prev.push(arr[i - 1] + '+' + curr);
    return prev;
  }, []);
1
Superposition
 Аватар для Padimanskas
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083
20.03.2017, 09:50  [ТС]
Цитата Сообщение от Fedor Vlasenko Посмотреть сообщение
Как вариант
Хороший вариант
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
20.03.2017, 09:50
Помогаю со студенческими работами здесь

Регулярные выражения Regex
привет всем, подскажите пожалуйста, как называется эта комманда в с# и как использовать ее?

Регулярные выражения (regex)
Нужно извлечь строку из переменной класса smatch. Пробовал через преобразование string(smatch_var) и через потоки, и во всех способах...

Составление regex выражения
Здравствуйте) Нужна помощь из составлением regex выражения. Оно должно ловить все строки с айпи, например: 127 0 0 1 127 0 0 1...

Регулярные выражения Boost::regex
Всем привет, разбирал пример с учебника (регулярные выражения) и столкнулся не понятным явлением. Задание: Выбрать номера только такого...

Регулярные выражения Boost::regex
Всем привет! Юзаю библиотеку boost. В частности boost::regex. Столкнулся с такой проблемой. Как заставить библиотеку обрабатывать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru