Регистрация Главная Сообщество
Сообщения за день Справка Регистрация

Парсинг и решение

-

Вопросы и ответы, обсуждения

- Ваши вопросы по Pascal/Delphi только в данном разделе

Ответ
 
Опции темы
Старый 09.11.2013, 19:23   #1
 Разведчик
Аватар для salkop
 
salkop никому не известный тип
Регистрация: 09.11.2013
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Парсинг и решение

Цитата:
(234+125),(197-167),(34*2),(15/3)

В Memo такой текст. Нужно что в скобках спарсить и решить.

Цитата:
(359),(30),(68),(5)

Такое надо чтобы было в другом Мемо. Помогите сделать!
  Ответить с цитированием
Старый 09.11.2013, 23:39   #2
 Старший сержант
Аватар для metraz
 
metraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядом
Регистрация: 25.12.2011
Сообщений: 191
Популярность: 5259
Сказал(а) спасибо: 31
Поблагодарили 235 раз(а) в 135 сообщениях
Отправить сообщение для metraz с помощью Skype™
 
По умолчанию Re: Парсинг и решение

Через копи пос делет.
копируешь то что между скобок, ищешь знаки +,-,\, *, если есть, выполняешь операцию между тем, что слева и тем что справа, удаляешь часть строки вместе со скобками, запсиываешь в мемо и так далее
  Ответить с цитированием
Старый 10.11.2013, 18:05   #3
 Разведчик
Аватар для salkop
 
salkop никому не известный тип
Регистрация: 09.11.2013
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: Парсинг и решение

С Copy Pos Delete сделал. Хочу теперь с регулярным выражением сделать, только само регулярное выражение не могу составить, чтобы парсить данные из скобок. Может кто составит? Буду благодарен за помощь!
  Ответить с цитированием
Старый 10.11.2013, 23:05   #4
 Старший сержант
Аватар для metraz
 
metraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядом
Регистрация: 25.12.2011
Сообщений: 191
Популярность: 5259
Сказал(а) спасибо: 31
Поблагодарили 235 раз(а) в 135 сообщениях
Отправить сообщение для metraz с помощью Skype™
 
По умолчанию Re: Парсинг и решение

reg.expression:='\((.*?)\)';
Кажется так, но мог со слешом перепутать, ибо давно не делал. Вытащит тебе то, что в скобках.
а дальше reg.execnext для перехода к следующей скобке.
  Ответить с цитированием
Пользователь сказал cпасибо:
NebesaBag (12.11.2013)
Старый 23.11.2013, 19:21   #5
 Разведчик
Аватар для salkop
 
salkop никому не известный тип
Регистрация: 09.11.2013
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: Парсинг и решение

Спасибо. Но немного не так надо. Надо чтобы, Match[1] - было первое число, Match[2] - математический символ, Match[3] - число которое после математического символа.
  Ответить с цитированием
Старый 23.11.2013, 22:57   #6
 Старший сержант
Аватар для metraz
 
metraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядомmetraz в состоянии испепелить взглядом
Регистрация: 25.12.2011
Сообщений: 191
Популярность: 5259
Сказал(а) спасибо: 31
Поблагодарили 235 раз(а) в 135 сообщениях
Отправить сообщение для metraz с помощью Skype™
 
По умолчанию Re: Парсинг и решение

[Ссылки могут видеть только зарегистрированные пользователи. ]
читаем, изучаем)
  Ответить с цитированием
Старый 24.11.2013, 15:56   #7
 Разведчик
Аватар для NerdyCodingKid
 
NerdyCodingKid на правильном путиNerdyCodingKid на правильном пути
Регистрация: 18.11.2013
Сообщений: 3
Популярность: 197
Сказал(а) спасибо: 0
Поблагодарили 10 раз(а) в 9 сообщениях
 
По умолчанию Re: Парсинг и решение

Цитата:
Сообщение от metrazПосмотреть сообщение
[Ссылки могут видеть только зарегистрированные пользователи. ]
читаем, изучаем)

А не проще ли перевести выражение из инфиксной записи в префиксную, после чего решить всё в стековой машине?
Впрочем, возможно, и то и другое является бесполезной хренью, ибо у человека, возможно, будут только простые выражения в духе "2+2", так что ему хватит и просто разделить строку. Регексп для обнаружения такого выражения:
\(\s*\d+\s*[\+\-\\\*]\s*\d\s*\)
Найдёт в обрабатываемой строке выражения вроде твоих (т.е. "(2+2)" без кавычек) но без обозначения знака.
После этого достаточно (как уже написали выше) разделить строку.
Цитата:
Сообщение от salkopПосмотреть сообщение
Надо чтобы, Match[1] - было первое число, Match[2] - математический символ, Match[3] - число которое после математического символа.

Так не получится. Разве-что двумя регекспами, один для обнаружения строки, второй для распихивания по матчам. Иначе ты будешь получать ещё и мусор (если в обрабатываемой строке есть ещё что-то помимо этих выражений в скобках)

Последний раз редактировалось NerdyCodingKid; 24.11.2013 в 15:59. Причина: дополнил ответ
  Ответить с цитированием
Пользователь сказал cпасибо:
NebesaBag (24.11.2013)
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Помогите!] парсинг 09098 Вопросы и ответы, обсуждения 3 16.08.2013 04:09
[Помогите!] Парсинг Буянь Вопросы и ответы, обсуждения 1 20.03.2012 04:50
Парсинг из XML OneShot Вопросы и ответы, обсуждения 13 08.12.2011 15:30
Парсинг OrBiT_DaRk С/С++ 1 20.09.2011 19:14
Парсинг. WiLLi-WindowS С/С++ 1 01.06.2011 18:07

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 06:42.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net