![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 18.01.2009
Сообщений: 118
|
![]()
es([^t][^x])?([^;\"])+es([^t][^x])?
У меня есть строка. В ней последовательность команд, разделенных символом ; строка начинается и заканчивается кавычками. Нужно проследить чтобы в каждой команде было: О командах: бывают два типа команд, es_x команды и es_ команды Если es_ команда встречает переменную, она заменяет ее значением (действие expand) а es_x просто использует имя переменной как текст. К экспандирующим ( не подобрал более подходящего для них слова) относятся: if es es_любойтексткоманды К неэкспандирующим: es_xif est_любойтексткоманды es_xлюбойтексткоманды Так как экспандирующие занимают больше времени возникла необходимость в скрипте который посмотрит чтобы в строке ограниченной ;, или " с конца или начала было не больше 1 экспандирующей команды Например: Код:
Я начал делать регулярное выражение для этого (пока без if) но оно почемуто реагирует на строку Код:
es([^t][^x])?([^;\"])+es([^t][^x])? |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 18.01.2009
Сообщений: 118
|
![]()
а п
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Delphi,преобразование строки в выражение | Chidory | Помощь студентам | 10 | 16.12.2008 02:18 |
Проверить выражение | fosto | Общие вопросы Delphi | 1 | 16.12.2008 01:52 |
Проверьте выражение | fosto | Помощь студентам | 2 | 15.12.2008 22:58 |
Не проверяется логическое выражение в операторе While | lsd11 | Помощь студентам | 2 | 15.10.2008 19:09 |
Строковое выражение | SeregaIRK | Общие вопросы C/C++ | 1 | 07.10.2008 19:20 |