Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как разделить строку на подстроки с помощью делителя, при этом чтобы сам делить попал в массив, и при этом на свое место

Kirieshkins Ученик (37), на голосовании 5 месяцев назад
Например есть строка «58+57-36». Нужно разделить ее на подстроки с помощью делителей из массива, который хранит в себе математические знаки, но при этом чтобы все плюсы, минусы, знаки умножения и тд сохранили свое место в массиве. То есть массив должен выглядеть следующим образом: «58», «+», «57», «-«, «36».
Голосование за лучший ответ
Вадим Ануфриев Мастер (1762) 6 месяцев назад
Вы можете использовать регулярное выражение для разделения строки на подстроки с учетом математических знаков. Затем каждый математический знак добавляется в массив. Вот пример кода на Python:
 import re 

# Исходная строка
string = "58+57-36"
# Массив с математическими знаками
delimiters = ["+", "-", "*", "/"]

# Регулярное выражение для разделения строки
regex_pattern = '|'.join(map(re.escape, delimiters))

# Разделение строки на подстроки с помощью регулярного выражения
substrings = re.split(regex_pattern, string)

# Получение математических знаков из исходной строки
signs = re.findall(regex_pattern, string)

# Соединение подстрок и знаков в один массив
result = [val for pair in zip(substrings, signs + ['']) for val in pair]

print(result) # Вывод результата
Этот код сначала разделяет строку на подстроки, используя регулярное выражение, которое учитывает математические знаки. Затем он находит все математические знаки и объединяет подстроки с соответствующими знаками в один массив.
KirieshkinsУченик (37) 6 месяцев назад
Умничка, закинул запрос в chatGPT даже не прочитав условие. Хер с условием, даже на ЯП не посмотрел
Похожие вопросы